Bir görüntü oluşturmak için olan bir ekrana başlıyorum. my build mode Şablonu tıklattığımda bu gibi görünen yeni bir etkinliğe gidiyorum stencil picker Şablon seçicimde iken, bir anahtar kutusu kullanan resimler için onclick yöntemim var. Yapmam gereken şey, hangi resmin üzerine tıklandığımı hatırlamak ve bu resmi önceki sayfaya uygulamak. Yapı kipine eklenen görüntüleri de birbirlerinin üzerine yığmak için kaydetmem gerekiyor (ancak ikincil bir problem). burada inşa sayfaGörüntüyü bir etkinlikten diğerine kaydetme
public class BuildMode extends AppCompatActivity
implements NavigationView.OnNavigationItemSelectedListener, AdapterView.OnItemSelectedListener {
private Button mStencilButton;
//private Button mColorButton;
private Button mUndoButton;
private Button mRedoButton;
private Spinner mColorSpinner;
private ImageView mImageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_build_mode);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
//bit map to get stencil selected and place into build mode
// Bundle extras = getIntent().getExtras();
// byte[] byteArray = extras.getByteArray("picture");
// Bitmap bmp = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length);
// ImageView image = (ImageView) findViewById(R.id.egg_image);
// image.setImageBitmap(bmp);
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.setDrawerListener(toggle);
toggle.syncState();
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
mStencilButton = (Button) findViewById(R.id.stencil_button);
// mColorButton = (Button) findViewById(R.id.color_button);
mUndoButton = (Button) findViewById(R.id.undo_button);
mRedoButton = (Button) findViewById(R.id.redo_button);
mColorSpinner = (Spinner) findViewById(R.id.colors_spinner);
mColorSpinner.setOnItemSelectedListener(this);
mStencilButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(BuildMode.this, StencilList.class);
startActivity(intent);
}
});
mUndoButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
mRedoButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
mColorSpinner = (Spinner) findViewById(R.id.colors_spinner);
mColorSpinner.setOnItemSelectedListener(this);
}
@Override
public void onBackPressed() {
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
if (drawer.isDrawerOpen(GravityCompat.START)) {
drawer.closeDrawer(GravityCompat.START);
} else {
super.onBackPressed();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.build_mode, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.about_us) {
return true;
}
return super.onOptionsItemSelected(item);
}
@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId();
if (id == R.id.nav_manage_build) {
// Handle the camera action
} else if (id == R.id.nav_gallery_build) {
Intent intent = new Intent(BuildMode.this, PreviewMode.class);
startActivity(intent);
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
switch (position) {
case 0:
// mImageView.setBackgroundColor(Color.WHITE);
break;
case 1:
// mImageView.setBackgroundColor(Color.YELLOW);
break;
case 2:
// mImageView.setBackgroundColor(Color.GREEN);
break;
case 3:
// mImageView.setBackgroundColor(Color.BLUE);
break;
case 4:
// mImageView.setBackgroundColor(Color.RED);
break;
case 5:
// mImageView.setBackgroundColor(Color.BLACK);
break;
}
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
}
benim kod ve şablon sayfa
public class StencilList extends AppCompatActivity {
private ImageView mStencil1;
private Bitmap bmp;
private byte[] byteArray;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_stencil_list);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
}
public void useStencil(View view) {
// Intent intent = new Intent(this, BuildMode.class);
switch (view.getId()) {
case R.id.stencil_image_1:
// intent.putExtra("picture", byteArray);
// startActivity(intent);
break;
case R.id.stencil_image_2:
break;
case R.id.stencil_image_3:
break;
case R.id.stencil_image_4:
break;
case R.id.stencil_image_5:
break;
case R.id.stencil_image_6:
break;
case R.id.stencil_image_7:
break;
case R.id.stencil_image_8:
break;
case R.id.stencil_image_9:
break;
case R.id.stencil_image_10:
break;
case R.id.stencil_image_11:
break;
case R.id.stencil_image_12:
break;
case R.id.stencil_image_13:
break;
case R.id.stencil_image_14:
break;
}
}
private void imageClicked()
{
}
} benim kodudur