2016-11-15 8 views
0

私はAndroidが初めてで、タブが3つあるFragmentTabHostページを開発しています。アクティビティクラスで、AsyncTaskクラスを呼び出してデータをフェッチし、共有プリファレンスに配置し、タブを追加する次のコードを作成します。各タブフラグメントクラスで、保存された共有設定データを取得し、ページに表示します。AsyncTaskのFragmentTabHostの空白ページ

mTabHost = (FragmentTabHost)findViewById(android.R.id.tabhost); 
mTabHost.setup(this, getSupportFragmentManager(), R.id.realtabcontent); 

mTabHost.addTab(mTabHost.newTabSpec("A").setIndicator("A"), 
      AFragment.class, null); 
mTabHost.addTab(mTabHost.newTabSpec("B").setIndicator("B"), 
      BFragment.class, null); 
mTabHost.addTab(mTabHost.newTabSpec("C").setIndicator("C"), 
      CFragment.class, null); 

問題は最初に表示されたタブページが空白であることです。これは、非同期タスクが完了する前に作成されるためです。したがって、タブの情報は、タブを変更して再度選択した後にのみ表示されます。良い解決策はありますか?

非常に高く評価されました!

答えて

0

実行可能な解決策が見つかりました。 AFragmentで非同期タスクを呼び出し、データを共有設定に入れてUIを更新します。別の2つのフラグメントは、共有プリファレンスから直接データを読み取ります。

関連する問題