Ho un'attività, che ha un pulsante. Quando clicco sul pulsante mi reindirizza alla galleria di immagini. Voglio mostrare l'immagine selezionata nella prossima attività usando una vista immagine. Ma non sta visualizzando l'immagine. La vista è fuori dallo schermo quando l'immagine è impostata.Come caricare un'immagine nella vista immagine dalla galleria?
Il mio codice per la selezione dell'immagine e lo spostamento successivo sono indicati di seguito. Non sto usando nessuna storia vera nelle mie attività.
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK
&& null != data) {
Uri selectedImage = data.getData();
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(selectedImage,
filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String picturePath = cursor.getString(columnIndex);
cursor.close();
if (!(picturePath.equals(""))) {
Intent intent = new Intent();
intent.setClass(MainActivity.this, ImageInGellary.class);
intent.putExtra("picturePath", picturePath);
startActivity(intent);
}
}
}
public class ImageInGellary extends Activity {
Button cancel;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.load_image);
cancel = (Button) findViewById(R.id.buttonCancelPicture);
Intent in = getIntent();
savedInstanceState = in.getExtras();
String picturePath = savedInstanceState.getString("picturePath");
ImageView imageView = (ImageView) findViewById(R.id.img_view);
imageView.setImageBitmap(BitmapFactory.decodeFile(picturePath));
cancel.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
/*
* Intent i = new Intent(Intent.ACTION_PICK,
* android.provider.MediaStore
* .Images.Media.EXTERNAL_CONTENT_URI);
*
* startActivityForResult(i, RESULT_LOAD_IMAGE);
*/
Intent intent = new Intent();
intent.setClass(ImageInGellary.this, MainActivity.class);
startActivity(intent);
}
});
}
}
se non si è trovato allora posso inviare il mio codice. o può dare ulteriori spiegazioni. –
Si prega di inviare il codice dalla classe 'ImageInGellary' e il file XML di layout di tale attività. – MarchingHome
se rimuovo la cronologia precedente: no da manifest che sta mostrando. Ma quando rimuovo la cronologia di back no manifest gli altri requisiti. Per favore aiuto. –