putExtra()如何工作?

时间:2015-05-12 04:33:52

标签: android android-activity

你能告诉我$.each(data,function(i,object){ console.log(i +'('+object.length+')') $.each(object, function (index, obj) { console.log(obj.title); }); }); 是如何运作的吗?它如何以及在何处存储传递给它的数据?我仍然感到困惑的是它内部的数据是如何工作的以及它是如何从一个活动传递到其他活动的?它的结构如何组织?或者存储在Intent类内部的值?

想象一下有A级。 它有一个putExtra()。我想在下一个活动中填写此字符串,因此我致电static string Example

现在有一个B.I填充文本框,其中包含id text_entered 。我把代码

activityforresult()

现在将保存文本的位置,在示例中还是在意图测试中?

3 个答案:

答案 0 :(得分:1)

Activity1.class

Intent intent = new Intent(getApplicationContext(), Activity2.class);
    intent.putExtra("EXTRA_NAME", 4);//Int
    intent.putExtra("EXTRA_NAME", "String_Values");//String

Activity2.class

String stringValue = getIntent().getStringExtra("EXTRA_NAME");//String extra
    int iValue = getIntent().getIntExtra("EXTRA_NAME", 0);//defaultValue = 0

答案 1 :(得分:0)

你的文本将随着@NamHoang在他的回答中描述的其他活动的意图一起传递。在您的情况下,A.Example(应该是一个字符串)只是一个用于引用intent中存在的值的键。 我希望你知道它是与意图一起发送的键值对。

答案 2 :(得分:0)

A.class

static String Example = "this is a example string";

private void JumpToB(){
    Intent intent = new Intent();
    intent.putExtra("key_data", Example);
    intent.setClass(this,B.class);
    startActivity(intent);
}

B.class

protected void onCreate(Bundle savedInstanceState) {
    String example = getIntent().getStringExtra("key_data");
    text_entered.setText(example);
}

如果你想传递一个模型,一个好方法是将模型转换为json。