保持屏幕活动 x 秒
Keep a screen active for x seconds
我正在使用初始屏幕,但正在初始屏幕上进行网络调用,因此当用户到达主屏幕时数据已准备就绪。
一旦网络调用完成,它会进入下一个屏幕,我希望启动画面至少打开 x 秒,即使网络调用需要几毫秒,因为当网络调用是 ms 时启动画面甚至都看不到。
我知道如何将初始屏幕延迟 x 秒,但希望将网络调用包含在这 x 秒内,而不是网络调用时间 + x 秒数。
谢谢
使用 Handler 端的 onPostExecute() 方法。当您的网络调用完成后,调用处理程序,它将等待 x 秒,然后移动到另一个 activity.
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
startActivity(new Intent(this, NextActivity.class));
}
}, x);// here x is time in millisecond 1 second = 1000 millseconds
} });
这一定能帮到你。
我正在使用初始屏幕,但正在初始屏幕上进行网络调用,因此当用户到达主屏幕时数据已准备就绪。
一旦网络调用完成,它会进入下一个屏幕,我希望启动画面至少打开 x 秒,即使网络调用需要几毫秒,因为当网络调用是 ms 时启动画面甚至都看不到。
我知道如何将初始屏幕延迟 x 秒,但希望将网络调用包含在这 x 秒内,而不是网络调用时间 + x 秒数。
谢谢
使用 Handler 端的 onPostExecute() 方法。当您的网络调用完成后,调用处理程序,它将等待 x 秒,然后移动到另一个 activity.
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
startActivity(new Intent(this, NextActivity.class));
}
}, x);// here x is time in millisecond 1 second = 1000 millseconds
} });
这一定能帮到你。