对于Android应用程序,哪种方法是更改活动的最佳方法

对于Android应用程序,哪种方法是更改活动的最佳方法,android,Android,我有两项活动。我想用固定的时间从A到B。去了B之后,我想在固定的时间回到A。我已经找过了,但不知道从哪里开始。我应该使用线程或计时器或处理程序 我正在努力理解以下代码: Handler activityChanger = new Handler(); activityChanger.postDelayed(new Runnable(){ startActivity(new Intent(this,about.class)); }, 10000); 如果有人能给我举个例子,那将是一个很

我有两项活动。我想用固定的时间从A到B。去了B之后,我想在固定的时间回到A。我已经找过了,但不知道从哪里开始。我应该使用
线程
计时器
处理程序

我正在努力理解以下代码:

Handler activityChanger = new Handler();  
activityChanger.postDelayed(new Runnable(){
   startActivity(new Intent(this,about.class));
}, 10000);
如果有人能给我举个例子,那将是一个很大的帮助。 我添加了以下代码

 Thread switchToActivityB = new Thread(new Runnable() {              
 @Override 
          public void run() {
            try {
              Thread.sleep(3000);
              Intent intent = new Intent(this, About.class);
              startActivity(intent);
              finish();
            } catch (Exception e) {

            }
          }
        });
        switchToActivityB.start();

放置代码的位置取决于您希望如何操作。例如,如果您希望每次都在活动A中执行此操作(这意味着当您转到B,然后按“返回”,在固定时间后,它将再次返回到活动B),则应将代码放入
onResume()
方法中


如果您只想执行一次,只需将其放入
onCreate()
方法中

放置代码的位置取决于您想要执行的方式。例如,如果您希望每次都在活动A中执行此操作(这意味着当您转到B,然后按“返回”,在固定时间后,它将再次返回到活动B),则应将代码放入
onResume()
方法中


如果您只想执行一次,只需将其放入
onCreate()
方法中

您可以将上述代码放入第一个活动的onResume()中。类似地,在“about.java”onResume()中放入相同的代码,只需稍加修改活动名称即可。…

您可以将上述代码放入第一个活动的onResume()中。类似地,在“about.java”onResume()中放入相同的代码,只需对活动名称进行少量修改。…

对于您描述的内容,您应该在
onStart
onResume
方法中使用它。如果您将其置于
onCreate
上,它将只运行一次,因为您的活动不会被破坏


您可以使用您描述的任何选项
StartActivity

对于您描述的内容,您应该在
onStart
onResume
方法中使用它。如果您将其置于
onCreate
上,它将只运行一次,因为您的活动不会被破坏

您可以使用您描述的任何选项<代码>起始触觉

将此代码添加到onCreate()方法中的活动A中

在活动B的onCreate()方法中执行同样的操作

将此代码添加到onCreate()方法中的活动A中

在活动B的onCreate()方法中执行同样的操作


当i Intent Intent=new Intent(this,activityA.Class)时的构造函数Intent(new Runnable(){},未标识的类);加上这个,它会显示错误时的状态。我该怎么办?驴子兄弟,我需要你的回复。试着指定activityA。这和activityB。这是指线程而不是你的活动。因此,做出这种改变应该是可行的。我也在上面的答案中进行了编辑。希望当i Intent Intent=new Intent(this,activityA.Class)时,这有助于构造函数Intent(new Runnable(){},未标识的类);加上这个,它会显示错误时的状态。我该怎么办?驴子兄弟,我需要你的回复。试着指定activityA。这和activityB。这是指线程而不是你的活动。因此,做出这种改变应该是可行的。我也在上面的答案中进行了编辑。希望这有助于什么是生活改造?对不起,这是打字错误。我的意思是对活动名称稍加修改。。我编辑过:)什么是生活改造?对不起,是打字错误。我的意思是对活动名称稍加修改。。我编辑过:)
Thread switchToActivityB = new Thread(new Runnable() {
  @Override
  public void run() {
    try {
      Thread.sleep(3000); // The fixed time in milli seconds
      Intent intent = new Intent(activityA.this, activityB.class);
      startActivity(intent);
      finish();
    } catch (Exception e) {
      // Catch Exception
    }
  }
});
switchToActivityB.start();
Thread switchToActivityA = new Thread(new Runnable() {
  @Override
  public void run() {
    try {
      Thread.sleep(3000); // The fixed time in milli seconds
      Intent intent = new Intent(activityB.this, activityA.class);
      startActivity(intent);
      finish();
    } catch (Exception e) {
      // Catch Exception
    }
  }
});
switchToActivityA.start();