vin*_*aba 2 android android-fragments
我的应用程序以 FragmentA 开头。我希望 FragmentA 出现 5 秒钟,然后显示另一个 FragmentB 替换 FragmentA。
我已通过以下方式显示 FragmentA:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
FragmentA frag = new FragmentA();
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction().add(R.id.fl,frag);
ft.commit();
Run Code Online (Sandbox Code Playgroud)
不知道在这之后该怎么办。
最初调用
getSupportFragmentManager().beginTransaction()
.replace(R.id.fl, new FragmentA())
.commit();
Run Code Online (Sandbox Code Playgroud)
之后,添加以下内容:
Handler handler = new Handler();
Runnable runnable = new Runnable() {
@Override
public void run() {
//Second fragment after 5 seconds appears
getSupportFragmentManager().beginTransaction()
.replace(R.id.fl, new FragmentB())
.commit();
}
};
handler.postDelayed(runnable, 5000);
Run Code Online (Sandbox Code Playgroud)
更新:只需从 Handler 中删除 runnable 以防止在活动被销毁后执行 runnable。
@Override
public void onDestroy () {
handler.removeCallbacks(runnable);
super.onDestroy();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5975 次 |
| 最近记录: |