アプリ制作実習〜intentで画面遷移(文字列を添えて)〜
こんばんは。
今日は画面遷移するときに文字データも添えて渡せる方法を学んだので紹介します。
やり方は
IntentのインスタンスにString型のデータを足すことが出来る
putExtra(String name, String value)というメソッドを追加してあげることで、
@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.menu_save: EditText edt = (EditText)findViewById(R.id.editText1); String str = edt.getText().toString(); if(str.length()!= 0){ edt.setTag(""); } Intent intent = new Intent(this, PhotoActivity.class); intentSV.putExtra("title", str); startActivity(intent); return true; (ソースコードより抜粋)
ちなみに受け手側は
public String title; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.photo); TextView txt= (TextView)findViewById(R.id.textView1); title = getIntent().getExtras().getString("title"); txt.setText(title); (ソースコードより抜粋)
って書いています。
さらっと書きましたが、putExtraの一つ目の引数で””を抜いて書いており、
なかなか気づかずものすごく時間がかかってしまいました。
Map型のデータと同じで、キーを受け渡していると考えるのが正しいんですね。