java - onActivityResult() 没有在我的 Android 应用程序中触发

标签 java android onactivityresult

我不知道问题是什么,我已经阅读了几乎所有相关问题,但对我的问题可能是什么感到困惑, Activity 运行良好并且在 finish() 方法,但我的 MainActivity 类中没有执行任何操作。我确保我的 list 不会调用 noHistorysingleton Activity 。我放置了一些 toast 和一组文本,但没有一个被调用。这是我的代码实现:

在主要 Activity 上:

Intent placeShips = new Intent(this, SetShips.class); //MainActivity.this works too
startActivityForResult(placeShips, RESULT_OK);

.

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (requestCode == RESULT_OK && resultCode == RESULT_OK) {
        Toast.makeText(MainActivity.this, "worked", Toast.LENGTH_SHORT).show();
        Toast.makeText(this, "worked", Toast.LENGTH_SHORT).show();
    }
    newGame.setText("PLS ");  //these aren't being called either
    toast("PLS");
}

关于被调用的 Activity : (请注意按钮工作正常)

    setShips.setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View v){
            setResult(RESULT_OK);
            finish(); //return to main activity, giving intent with stored player information
        }
    });

进一步说明; toasts 在 setShips 按钮监听器上正确显示,但是,没有任何内容传递回 onActivityResult 方法,如所解释的,甚至 toasts 也没有显示。我还漏掉了什么吗?

最佳答案

您似乎没有正确设置请求代码。你需要做的是:

static final int YOUR_CODE = 1; 
Intent placeShips = new Intent(this, SetShips.class); //MainActivity.this works too
startActivityForResult(placeShips, YOUR_CODE);

然后你可以这样做:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {

    if (requestCode == YOUR_CODE && resultCode == RESULT_OK) {
        Toast.makeText(MainActivity.this, "worked", Toast.LENGTH_SHORT).show();
        Toast.makeText(this, "worked", Toast.LENGTH_SHORT).show();
    }
    newGame.setText("PLS ");  //these aren't being called either
    toast("PLS");
}

关于java - onActivityResult() 没有在我的 Android 应用程序中触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42896000/

相关文章:

android - 如何在 Android 中删除对话框的标题

java - 从 SQLite 和 Cursor 比较问题中获取值(value)

android - 什么样的架构最适合通信设备?

android - 调用 startActivityForResult 后 DialogFragment 消失

android - 为什么 startActivityForResult 不返回任何东西?

java - 何时手动同步 Java 线程,何时不同步

java - 从集群收集指标

java - 当我运行应用程序时它会重新启动我的应用程序

java - EJB 方法从自身调用 : does the container have influence on it?

java - 将数据从 fragment 发送到另一个 Activity 时不会调用 OnActivityResult