0

新しいアクティビティに値を渡そうとしていますが、新しいアクティビティから値を読み取ることができません。

ここに私のコードがあります、

Intent myIntent = new Intent(Photo2Activity.this, MainActivity.class);

myIntent.putExtra("image1", image1);
myIntent.putExtra("image2", image2);
myIntent.putExtra("image3", image3);

myIntent.putExtra("konteyner_no", _txt_konteyner_id.getText().toString());
myIntent.putExtra("mahalle", _txt_mahalle.getText().toString());
myIntent.putExtra("sokak", _txt_sokak.getText().toString());

myIntent.putExtra("konteyner_temizmi", _check_konteyner_temizmi.isChecked());
myIntent.putExtra("yaninda_cop_varmi", _check_yaninda_cop_varmi.isChecked());
myIntent.putExtra("aralarinda_cop_varmi", _check_aralarinda_cop_vardi.isChecked());
myIntent.putExtra("zamansiz_cop_varmi", _check_zamansiz_cop_vardi.isChecked());
myIntent.putExtra("cop_obekleri_vardi", _check_cop_obekleri_vardi.isChecked());

myIntent.putExtra("note", _txt_note.getText().toString());

startActivity(myIntent);

新しいアクティビティ (MainActivity) からそれらを読み取るにはどうすればよいですか?

4

1 に答える 1

2

ビットマップをバイト配列に変換:-

Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] byteArray = stream.toByteArray();

インテントにバイト配列を渡します:-

Intent intent = new Intent(MainActivity.this, NextActivity.class);
intent.putExtra("picture", byteArray);
startActivity(intent);

バンドルからバイト配列を取得し、ビットマップ イメージに変換する:-

Bundle extras = getIntent().getExtras();
byte[] byteArray = extras.getByteArray("picture");
Bitmap bmp = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length);
ImageView image = (ImageView) findViewById(R.id.imageView1);
image.setImageBitmap(bmp);

プリミティブ型を渡すには、以下のリンクを確認してください

あるアクティビティから別のアクティビティに文字列を渡すにはどうすればよいですか?

于 2013-05-15T10:17:13.053 に答える