从另一个 Activity 的 Intent 中检索 int 时,Android 应用程序崩溃

标签 android android-intent

我正在尝试在一个 Activity (SetupMenu) 中制作一个按钮,当按下该按钮时,会将一个 int 放入 Intent 中并将其传递到下一个 Activity (IntroActivity),其中 textView 将检索该 int 并显示它。

问题是,当应用程序运行并且我进入 Activity 并按下按钮时,应用程序崩溃并且我的模拟器告诉我“不幸的是 [我的应用程序] 已停止工作。”

我觉得我已经测试了所有可能的角度来让它发挥作用。我应该注意到按钮工作正常,textview 工作正常,其他一切工作顺利 - 我只在尝试检索 Intent 并将其显示在 textView 中时遇到问题。我尝试通过 String 而不是 Int 传递,但也有问题(我的字符串不会出现)。有什么指点吗?

SetupMenu Activity (这里我将一个 int 放入我的 Intent 中):

public class SetupMenu extends Activity {

    public final static String extra_progress_key = "com.example.angelsanddemons.track_players";
    public int track_players = 0;

    public void to_intro(View view) {
        Intent intent = new Intent(this, IntroActivity.class);
        intent.putExtra(extra_progress_key, track_players);
    startActivity(intent);
}

IntroActivity Activity (这里我尝试从 intent 中检索 int):

public class IntroActivity extends Activity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Intent intent = getIntent();
        int temp = intent.getIntExtra(SetupMenu.extra_progress_key, 0 );
        TextView textView = new TextView(this);
        textView.setText(temp);
        setContentView(textView);
    }
}

最佳答案

一个问题是您不能将 TextView 的文本设置为 int;您需要先将其转换为字符串。在膨胀之前操纵 View 也不是一个好主意,所以也许你的 onCreate() 应该是:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Intent intent = getIntent();
    int temp = intent.getIntExtra(SetupMenu.extra_progress_key, 0 );
    TextView textView = new TextView(this);
    setContentView(textView);
    textView.setText(String.valueof(temp));
}

关于从另一个 Activity 的 Intent 中检索 int 时,Android 应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23146055/

相关文章:

android - 动态 ListView Android

没有自定义 ListView 适配器的 Android 设置 ListView 单元格的元素

java - 以编程方式从 Android 应用程序启动 Skype

android - FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY 未针对历史记录设置

android - 重定向用户以打开互联网设置

android如何使用xmpp-smack在群聊中发送和接收图像和位置(使用 map )

java - 应用程序停止工作

android - AudioRecord 文件大小有点大

android - 从对话框 fragment 启动 Activity

android - 启动 Gmail 应用程序的 Intent URI