2011-12-03 17 views
2

https://github.com/JakeWharton/Android-ViewPagerIndicatorプラグインを使用して、プロジェクトにフラグメントを実装しようとしています。Androidフラグメントの実装

マイ・フラグメント

public final class NearByFragment extends Fragment { 
    private static String TAG = "bMobile"; 

    public static NearByFragment newInstance(String content) { 
     NearByFragment fragment = new NearByFragment(); 
     return fragment; 
    } 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     Log.d(TAG, "onCreate"); 
     super.onCreate(savedInstanceState); 
    } 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 
     Log.d(TAG, "onCreateView"); 
     return inflater.inflate(R.layout.fragment_search_nearby, null); 
    } 
} 

今、私は新しいスレッドを開始し、サーバからJSONをダウンロードして、私がダウンロードしたコンテンツからリストビューを割り当てるスタートのようないくつかのコードを実行したいです。フラグメントでは、onCreateViewでビューを割り当てています。どこで書かなければならないのですか

listview = (ListView) findViewById(R.id.list_items); 

((TextView) findViewById(R.id.title_text)) 
       .setText(R.string.description_blocked); 

と他のコードは、フラグメントビューを生成する必要がありますか?

答えて

3

あなたは、あなただけの膨張ビュー内で検索することができます:あなたはまた、あなたのコード内の別の場所Fragment.getView()関数を使用すると、そのビューのfindViewById()メンバーを呼び出すことができます

@Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 
     Log.d(TAG, "onCreateView"); 
     View v = inflater.inflate(R.layout.fragment_search_nearby, null); 
     listview = (ListView)v.findViewById(R.id.list_items); 
     ((TextView)v.findViewById(R.id.title_text)) 
         .setText(R.string.description_blocked); 
     return v; 
    } 

1

レイアウト要素にアクセスしたい場合は、getActivity().findByView()をフラグメントから使用できます。または、findByView()コールをメインアクティビティに配置することもできます。

関連する問題