0

私はthis article を使用しました。私は質問があります。再読み込みPageFragment data after viewpager

PageFragment(extends Fragment)では、DB(sqlite) からロードするいくつかのフィールドがあります。このフラグメントには、クリックした後dbテーブルを更新するボタンがあります。 更新されたデータを表示するためにフラグメントをリロードしたい(スワップすることなく)。 私はアンドロイドがメモリ内に状態を保持していることを知っていますが、スワイプさえない更新されたフィールドを表示する必要があります。

私はPOSITION_NONE、setOffscreenPageLimit、notifyDataSetChanged、detach、attachなどを使用しようとしていますが、それらのどれもうまく動作せず、私はそれらについて混乱しました。

答えて

1

より適切な方法は、最初の更新ロジックを別のメソッドに置き、dbを更新した後にメソッドを呼び出すことです。

public void onCreateView(){ 
    //your view creation and inflation 
    //call populateUI after inflation here 
} 

public void onResume(){ 
    //or here 
} 

//take data from someplace and populate your UI may be from database 
public void populateUI(){ 
    //get values and set fields 
} 

public void onClick(View v){ 
    //the button click 
    //update db 
    //then 
    populateUI(); 
} 
+0

ありがとうございました。私は問題を解決するために間違った方法を使用します。あなたが説明した方法の助けを借りて、私の問題は解決されました。 –

+0

喜んでそれは助けました:-) –

関連する問題