将数据从Activity中的接口传递到另一个Activity

时间:2015-05-06 15:25:52

标签: android

我尝试使用interface:

将值从Fragment传递到Activity
 public interface OnSelectedButtonListener {
    void onButtonSelected(int buttonIndex);
}

这是有效的,但是当我尝试将值从Activity中的接口传递到另一个Activity时,我得到null。如何以另一种方式解决这个问题?

@Override
public void onButtonSelected(int buttonIndex) {
    Intent intent = new Intent(MainActivity.this, ArticleActivity.class);
    intent.putExtra("text",buttonIndex);
    startActivity(intent);
}

1 个答案:

答案 0 :(得分:1)

查看本课Starting Another Activity

<强> MainActivity

在MainActivity类的顶部,添加EXTRA_MESSAGE定义,如下所示:

public final static String EXTRA_MESSAGE = "com.mycompany.myfirstapp.MESSAGE";

并调用启动活动:

Intent intent = new Intent(MainActivity.this, ArticleActivity.class);
intent.putExtra(EXTRA_MESSAGE, buttonIndex);
startActivity(intent)

<强> ArticleActivity

在OnCreate(Bundle savedInstanceState)中获取意图并将其分配给局部变量。

Intent intent = getIntent();
int index;
if (intent != null) {
   index = intent.getIntExtra(MainActivity.EXTRA_MESSAGE, 0);
}