48

これは、エクストラに文字列が追加される方法です。

Intent i = new Intent();
i.putExtra("Name", edt_name.getText());
i.putExtra("Description", edt_desc.getText());
i.putExtra("Priority", skb_prior.getProgress());
setResult(RESULT_OK, i);
finish();

これは私がそれらを抽出しようとする方法ですonActivityResult():

String name = data.getStringExtra("Name");
String desc = data.getStringExtra("Description");
int prior   = data.getIntExtra("Priority", 50);

しかし、2 番目のコード ブロックの後にnamedescare がnullありますpriorが、適切な値があります。さらに、デバッガーでは、必要な文字列が含まれていることがわかりますdata.mExtras.mMapが、最初のリクエストの後でのみです。

4

1 に答える 1

103

挿入するときはExtras追加しようと.toString()

i.putExtra("Name", edt_name.getText().toString());

そこに値が表示されていますが、それをto callCharSequenceに変換する必要があります。明らかに、 に対してこれを行うだけです。正しく行われているため、正しい値が表示されますStringgetStringExtra()Stringsint

于 2013-03-21T18:54:09.337 に答える