如何在android中使用计时器显示初始屏幕?
你能告诉我如何在android中使用定时器显示闪屏吗?我可以使用线程显示闪屏,但是线程是个不错的选择,你能告诉我处理这个问题的最佳方法吗? 用这样的线 包com.example.splash_测试如何在android中使用计时器显示初始屏幕?,android,Android,你能告诉我如何在android中使用定时器显示闪屏吗?我可以使用线程显示闪屏,但是线程是个不错的选择,你能告诉我处理这个问题的最佳方法吗? 用这样的线 包com.example.splash_测试 import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.view.Menu; public class MainActivity extends Acti
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
public class MainActivity extends Activity {
protected int _splashTime = 5000;
private Thread splashTread;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
splashTread = new Thread() {
@Override
public void run() {
try {
synchronized(this){
wait(_splashTime);
}
} catch(InterruptedException e) {}
finally {
finish();
Intent i = new Intent();
i.setClass(MainActivity.this, SecondActivity.class);
startActivity(i);
//stop();
}
}
};
splashTread.start();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
简而言之,这段代码对设计计时器非常有帮助。试试这个
new Timer().schedule(new TimerTask() {
@Override
public void run() {
startActivity(new Intent(getApplicationContext(), MainActivity.class));
}
}, 5000);
在这里,我将在5秒钟后开始main活动。
只需将此代码放入splash活动的onCreate()
。您还可以在onCreate中插入:
SystemClock.sleep(TimeUnit.SECONDS.toMillis(3));
p、 检查SplashScreen的实现情况。out\u marginLeft=“50dp”
android:layout_marginTop=“50dp”
android:layout_marginRight=“50dp”
android:gravity=“center”
android:orientation=“vertical”>
JAVA
Kotlin Way
Timer().schedule(object : TimerTask() {
override fun run() {
startActivity(Intent(applicationContext, MainActivity::class.java))
}
}, 3000)
你看起来像这个计时器吗?sTimer=new Timer();时间表(new TimerTask(){@Override public void run(){rununuithread(new Runnable(){public void run(){startActivity(new Intent(SplashScreen.this,AppMainActivity.class));finish();}}) }, 2000); // 每2秒更新一次
out_marginLeft="50dp"
android:layout_marginTop="50dp"
android:layout_marginRight="50dp"
android:gravity="center"
android:orientation="vertical">
<ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/txtProgress"
android:layout_centerHorizontal="true"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:progress="50"
android:progressTint="@android:color/black" />
<TextView
android:id="@+id/txtProgress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="Progress"
android:textColor="@android:color/black" />
</LinearLayout>
Java
new Handler().postDelayed(new Runnable() {
/*
* Showing splash screen with a timer. This will be useful when you
* want to show case your app logo / company
*/
@Override
public void run() {
// This method will be executed once the timer is over
// Start your app main activity
Intent i = new Intent(SplashScreen.this, YourActivity.class);
startActivity(i);
// close this activity
finish();
}
}, 1000);
Timer().schedule(object : TimerTask() {
override fun run() {
startActivity(Intent(applicationContext, MainActivity::class.java))
}
}, 3000)