从另一个类中检索意图值

时间:2011-09-29 07:40:49

标签: android json

我的问题有点基础。我一直在学习JAVA和android的代码。在这里,我对如何通过意图调用我发送的值感到困惑。

在我的第一个活动中,这是我正在使用的意图。

            Intent intent = new Intent(MainActivity.this, Secondactivity.class);
            String regName1 = regName;
            intent.putExtra(regName1, regNameSplit[0]);
            startActivity(intent);

这里regName1将包含三个值。 SessionID,URL,名称由“ - ”分隔。

在我的SecondActivity中

public class Secondactivity extends Activity {
public final String TAG = "###---Secondactivity---###";
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.secondactivity);
    Log.i(TAG,"before if statement");
    if (getIntent().getStringExtra("regName1") != null){
        getIntent().getStringExtra("regName1").split("-");
        String[] str = "regName";
        Log.i(TAG, ""+str[0]+str[1]+str[2])
    }
}

}

如果regName1始终为null,则该值。

3 个答案:

答案 0 :(得分:0)

并且您确定变量regName的内容实际上是“regName”? 因为您使用

设置了值
intent.putExtra(regName, ... )

你可以使用

获得价值
intent.getStringExtra("regName")

答案 1 :(得分:0)

使用firstactivity

不要使用

String regname1 = regname;

只是:         intent.putExtra(“regName1”,regNameSplit [0]);

第二个活动中的

if (getIntent().getStringExtra("regName1") != null){ // }

答案 2 :(得分:0)

这一行

intent.putExtra(regName1, regNameSplit[0]);

需要像这样

intent.putExtra("regName1", regNameSplit[0]); // note the quotes

但是你使用regName1作为变量......你怎么期望第二个类知道那个变量?

改为使用字符串资源。