在没有用户交互的情况下显示片段并在几秒钟后将其关闭
Show fragment and close it after a few seconds without user interactions
我想显示一个片段 5 秒,然后在没有用户交互的情况下将其关闭。这是我的代码。
@Override
public void onResume() {
super.onResume();
new Thread(new Runnable() {
@Override
public void run() {
try {
Thread.sleep(5000);
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
listener.closeFragment(null);
}
});
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}).run();
}
listener.closeFragment(null);
方法效果很好(它关闭片段)但片段从未显示。就像线程在片段可见之前运行一样。任何想法?可以吗?
你不应该使用 .start() 而不是 .运行() 吗?
您只是按顺序调用该线程的逻辑。
希望对您有所帮助。
我想显示一个片段 5 秒,然后在没有用户交互的情况下将其关闭。这是我的代码。
@Override
public void onResume() {
super.onResume();
new Thread(new Runnable() {
@Override
public void run() {
try {
Thread.sleep(5000);
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
listener.closeFragment(null);
}
});
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}).run();
}
listener.closeFragment(null);
方法效果很好(它关闭片段)但片段从未显示。就像线程在片段可见之前运行一样。任何想法?可以吗?
你不应该使用 .start() 而不是 .运行() 吗?
您只是按顺序调用该线程的逻辑。
希望对您有所帮助。