【发布时间】:2016-01-28 07:07:04
【问题描述】:
我有一个工作飞溅
public class MainSplash extends AppCompatActivity {
private final int SPLASH_DISPLAY_LENGTH = 1000;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Intent mainIntent = new Intent(MainSplash.this, MainMenu.class);
MainSplash.this.startActivity(mainIntent);
MainSplash.this.finish();
}
}, SPLASH_DISPLAY_LENGTH);
}
}
我想添加几个按钮,例如share、more 等
我通过删除处理程序和SPLASH_DISPLAY_LENGTH 来做到这一点,并向 xml 添加按钮并像处理任何其他活动一样处理对它们的点击,并设置一个Start 按钮来启动MainActivity,@ 987654327@ 几秒钟后启动(加载 1、2 秒后)。
但是我想处理MainActivity在SplashActivity中的加载时间,
我该怎么做?
这是添加按钮后的示例SplashActivity
public class MainSplash extends AppCompatActivity implements View.OnClickListener {
//private final int SPLASH_DISPLAY_LENGTH = 1000;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
Button btn1 = (Button) findViewById(R.id.button);
Button btn2 = (Button) findViewById(R.id.button2);
Button btn3 = (Button) findViewById(R.id.button3);
Button btn4 = (Button) findViewById(R.id.button4);
btn1.setOnClickListener(this);
btn2.setOnClickListener(this);
btn3.setOnClickListener(this);
btn4.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.button4:
Intent mainIntent = new Intent(this,MainMenu.class);
startActivity(mainIntent);
finish();
break;
}
}
}
【问题讨论】:
-
即使你发布了一个简短的问题,你想要什么仍然不清楚..
-
@Brendon 请再次检查它是否有意义或再次编辑它
-
如果您使用闪屏,为什么要在其中添加一些按钮。如果用户想要点击某个按钮但没有足够的时间会发生什么,因为
MainActivity在 2 秒后加载??? -
@DanhDC 请检查代码的第二部分,我将删除时间,主要活动将在按钮单击时开始,我只希望在按下
button4后立即开始主要活动,即它加载用户与启动画面交互时的背景 -
你是否检查了加载
MainActivity所用的时间。如果有很多从服务器获取的数据,你可以在MainSplash中获取它并把它放到MainActivity使用Intent.putExtra。
标签: java android splash-screen