Android传输不工作
我有一个启动屏幕,有一个短暂的延迟,延迟后它会移动到splashscreen上,但是我似乎无法覆盖转换,我不明白为什么…尽管转换在调试模式下工作,这非常奇怪Android传输不工作,android,overriding,transition,Android,Overriding,Transition,我有一个启动屏幕,有一个短暂的延迟,延迟后它会移动到splashscreen上,但是我似乎无法覆盖转换,我不明白为什么…尽管转换在调试模式下工作,这非常奇怪 package com.example.android.bubblestrouble; 导入android.app.Activity; 导入android.content.Intent; 导入android.os.Bundle 公共班级小组扩大活动范围{ @Override public void onCreate(Bundle save
package com.example.android.bubblestrouble;
导入android.app.Activity;
导入android.content.Intent;
导入android.os.Bundle
公共班级小组扩大活动范围{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
final int delay = 3000;
setContentView(R.layout.team);
Thread welcomeThread = new Thread()
{
int wait = 0;
@Override
public void run()
{
try {
super.run();
/**
* use while to get the splash time. Use sleep() to increase
* the wait variable for every 100L.
*/
while (wait < delay)
{
sleep(100);
wait += 100;
}
}
catch (Exception e)
{
System.out.println("EXc=" + e);
}
finally
{
/**
* Called after splash times up. Do some action after splash
* times up. Here we moved to another main activity class
*/
startActivity(new Intent(Team.this, SplashScreen.class));
Team.this.finish();
Team.this.overridePendingTransition(R.anim.fade, R.anim.hold);
}
}
};
welcomeThread.start();
}
@覆盖
创建时的公共void(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
最终整数延迟=3000;
setContentView(R.layout.team);
线程welcomeThread=新线程()
{
int wait=0;
@凌驾
公开募捐
{
试一试{
super.run();
/**
*使用while获得启动时间。使用sleep()增加启动时间
*每100升的等待变量。
*/
while(等待<延迟)
{
睡眠(100);
等待+=100;
}
}
捕获(例外e)
{
System.out.println(“EXc=“+e”);
}
最后
{
/**
*飞溅时间结束后调用。飞溅后执行一些操作
*时间到了,我们转到另一个主要的活动课
*/
startActivity(新意图(Team.this、SplashScreen.class));
团队。这个。完成();
团队。此。覆盖过渡(R.anim.fade,R.anim.hold);
}
}
};
welcomeThread.start();
}
}直接溶液。在“活动开始”时立即显示您的启动图像,并用计时器所需的布局替换。类似这样(
onCreate
Teamactivity的事件):
谢谢你,尽管这不是这个应用程序的最佳实践。主要的问题是,我不明白为什么overridePendingTransition不起作用。我正在尝试使用过渡效果,这是实现这一点的最佳方法。也许问题出在睡眠周期?尝试使用
sleep(3000)
而不是递增
ImageView splashImage = new ImageView(this);
splashImage.setImageBitmap(splashBitmap); // or drawable/resource - as you like
setContentView(splashImage);
Thread timerThread = new Thread() {
@Override
public void run() {
sleep(3000);
Team.runOnUiThread(new Runnable() {
@Override
public void run() {
setContentView(R.layout.team);
}
});
}
}
timerThread.start();