问题描述
好吧,我打算开始一个“大学开放日” Android应用程序。实际上,我在过去五个月中学习了一些android和Java编程。现在我实际上要开始我的应用程序。我的问题是我想拥有一个徽标屏幕(活动),然后是我的主屏幕(另一个活动)。 我希望当我启动应用程序时,我的徽标屏幕应该出现,然后在(例如5)秒后自动出现,我的主屏幕应该出现。 同样在我的主屏幕上,我希望有一些按钮设计(因为我有很多活动),其中的按钮应该类似于我在下面的链接中发送的按钮。每次单击一个按钮时,都会给我带来不同的效果活动和过程使用不同的按钮重复。问题是由于我有太多的活动,我希望按钮小而圆,类似于图片。有什么可以帮助我做到这一点的吗? 帮我,请在一个非常大的困境中。
1楼
您可以为此使用线程。
public class SplashActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getSupportActionBar().hide();
setContentView(R.layout.activity_splash);
Thread timer=new Thread(){
public void run(){
try{
sleep(5000); //freeze app for 5 seconds
}catch(InterruptedException e){
e.printStackTrace();
}finally{
nextActivity(); // go to next activity
}}} ;
timer.start();
}
}
public void nextActivity(){
Intent intent = new Intent(this,MainActivity.class);
startActivity(intent);
}
不要忘记覆盖onPause()
方法
protected void onPause(){
super.onPause();
finish(); //finish activity instance so that it is not resumed
}
至于xml,只需将您的徽标放在activity_splash.xml
中的imageView中
编辑:
现在为您的问题的第二部分:
创建一个布局“ second_activity.xml”,并在其中放置ID为b1,b2,b3等的按钮
那你的活动是
public class MainActivity extends AppCompatActivity { Button b1,b2,b3; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.second_activity); b1=(Button) findViewById(R.id.b1); b2=(Button) findViewById(R.id.b2); b3=(Button) findViewById(R.id.b3); b1.setOnclickListener(this); b2.setOnclickListener(this); b3.setOnclickListener(this); } @Override public void onClick(View v) { // TODO Auto-generated method stub switch(v.getId()){ case R.id.b1: Intent go = new Intent(this,anotheractivity.class); startActivity(intent); break; case R.id.b2: Intent go = new Intent(this,yetanotheractivity.class); startActivity(intent); break; case R.id.b3: Intent go = new Intent(this,yetyetanotheractivity.class); startActivity(intent); break; }} }