我的第一个Android项目需要一些帮助。
我想编写一个应用程序,用几秒钟的时间向您显示一张带有ImageView的图片,我会说大约4秒钟,然后将其更改为第二个 Activity ,该 Activity 显示一个按钮(仅用于测试)。
我的问题是,在我在AVD中启动它后,我的应用程序会跳过图片并立即显示该按钮。
我该如何解决?我抬头很久,尝试了很多事情,希望你们中的某人有一个主意:)
感谢您的帮助
这是我的MainActivity代码:
package com.example.parkourspots;
public class MainActivity extends Activity {
private ViewTreeObserver vto;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final View myLayout = findViewById(R.id.startscreen);
vto = myLayout.getViewTreeObserver();
vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener(){
@Override
public void onGlobalLayout(){
try {
Thread.sleep(500);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Intent intent = new Intent(MainActivity.this, select_activity_class.class);
startActivity(intent);
}
});
}}
最佳答案
检查此代码。
package com.example.parkourspots;
public class MainActivity extends Activity {
private static int TIME_OUT = 4000; //Time to launch the another activity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final View myLayout = findViewById(R.id.startscreen);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Intent i = new Intent(MainActivity.this, ActivityTwo.class);
startActivity(i);
finish();
}
}, TIME_OUT);
}
});