我对android很新,并试图添加一个启动画面,我已经成功了一半。但是,一个奇怪的想法发生,这肯定是一个容易的。我在这里尝试过: -
我想停止SplashScreen一段时间。此初始屏幕布局包含一个显示appLogo的ImageView。
public class SplashActivity : Activity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.SplashScreen);
ImageView splashScreenImage = FindViewById<ImageView>(Resource.Id.appLogo);
splashScreenImage.SetImageResource(Resource.Drawable.splLogo);
Thread.Sleep(30000);
StartActivity(typeof(MainActivity));
}
}
Actualy我的启动画面等待停止了一段时间,但ImageView
没有显示它在新活动即将开始的最后时刻出现。
为什么会这样?任何帮助表示赞赏:)
答案 0 :(得分:1)
<强>问题:强>
Thread.Sleep(30000);
它没有显示,因为你阻止你的UI线程处理SetContentView
以显示在屏幕上,因此它没有显示。
它真正做的是它会在没有显示/黑屏的情况下等待30秒并改变活动。
<强>解决方案:强>
使用计时器或处理程序而不是休眠线程。