現在、主なアクティビティのカードを介してjsonファイルを表示するアプリケーションを開発中です。私のタブ付きアクティビティで現在選択されているタブに応じて、jsonファイルをダウンロードするメソッドによって、ダウンロードするjsonファイルが決まります(整数を渡し、メソッドにスイッチがあります)。 getItem、同様にgetCount、およびgetPageTitle:タブ付きアクティビティの現在選択されているタブを取得する
Fragment.Downloadjson(rootview,integer,context);
さて、私のタブ付きアクティビティのために、私は通常のものを持っているSectionsPagerAdapterを持っています。ここでは
は方法です。はのgetItemに私は私の新しいフラグメントを作成しています:
@Override
public Fragment getItem(int position) {
View v1 = getWindow().getDecorView().getRootView();
switch (position) {
case 0:
//Fragment.Download(v1,0,getApplicationContext());
return new Fragment().f(Fragment.page.TODAY);
case 1:
//Fragment.Download(v1,1,getApplicationContext());
return new Fragment().f(Fragment.page.TOMORROW);
default:
return new Fragment();
}
}
例外:それはで動作するので、私は、私の方法でrootviewパラメータであることを、このエラーの原因を発見した
android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application
私はそれを定義するので、パラメータとしてrootView
とonCreateView。声明現在選択されているタブのためか、現在はそこフラグメントを表示する場合
A)私は現在選択されているタブ
Bを取得する方法を知らないのでHovewerは、私はそれはわからない)、することはできません私はタブを切り替えた後、結局、IfステートメントだからonCreateView
になりますので、再度、JSONファイルをダウンロードするでしょう、私の質問はどのように私はこれを解決するのです、
のですか?
このリンクをクリックすると現在のタブが表示されます。http://stackoverflow.com/questions/3583405/get-index-of-selected-tab-in-tabhost –
@BrahmamYamani私はタブアビリティがありません。アンドロイドスタジオから_タップされた活動_そのため、Tabhostは使用できません。 –