java - 在启动 Activity 中按下后退按钮时如何完成其​​他 Activity ?

标签 java android

所以我在做类似幻灯片的项目,但我的问题是,当我在幻灯片中间时,我想回到我的主要 Activity ,我的幻灯片将开始使用我智能手机上的后退按钮。发生的情况是,一旦我按下后退按钮,它就会返回,但其他幻灯片将在我在 handler.postDelayed(r1, 3000); 中设置的 3 秒后继续播放。 .请帮忙。谢谢

public class Dad1 extends AppCompatActivity {
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.dad1);

        Runnable r1 = new Runnable() {
            @Override
            public void run() {
                Intent i = new Intent(getApplicationContext(), Dad2.class);
                startActivity(i);
                finish();
            }
        };
        Handler handler = new Handler();
        handler.postDelayed(r1, 3000);

    }
}

最佳答案

您可以做的是保留 Handler对象位于 Activity等级。当按下后退按钮时,只需取消 Handler callbacks .因此,在这种情况下,您的处理程序的 run方法不会被调用。

请在下面找到示例代码:

   public class Dad1 extends AppCompatActivity {

private Handler handler;

private Runnable myRunnable;

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    initRunnable();
    handler.postDelayed(myRunnable,3000);
}

private void initRunnable() {
    myRunnable = new Runnable() {
        @Override
        public void run() {
            Intent i = new Intent(getApplicationContext(), Dad2.class);
            startActivity(i);
            finish();
        }
    };
}

@Override
public void onBackPressed() {
    super.onBackPressed();
    if(handler!=null){
        handler.removeCallbacks(myRunnable);
    }
}

}

关于java - 在启动 Activity 中按下后退按钮时如何完成其​​他 Activity ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45901239/

相关文章:

java - 如何使用java prepare语句更新mysql timestamp列?

android - 在 Android 4.2 中以编程方式切换 wifi 网络共享

android - 添加了firebase gradle问题,版本2.0.0

android - 在 Ice Cream Sandwich 上测试 Gingerbread 布局

java - 如何让NVDA读取Swing/GUI元素

java - 可动态调整大小的线程池

java - Java 8 Lambda 表达式编译成什么?

java - 如何添加新版本的Apache Tomcat以配置新服务器?

android - 当我单击android上的Home按钮时,我希望它保存框架AS3

android - 应用程序是否可以访问智能手机上的所有数据