2011-10-01 57 views
13

我想要一個自定義的行,所以我在xml中使用列表視圖並將其膨脹成一個片段。我很困惑如何設置列表視圖的適配器。 我創建了一個擴展Base Adapter的新適配器。在getView方法中,我真的不知道在擴充row.xml佈局時傳遞的上下文。 如何爲列表視圖和地點設置適配器?設置列表視圖中的一個片段中的適配器android

public class ResultsFragment extends Fragment{ 


    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     View v = inflater.inflate(R.layout.results_layout, container, false); 
     listView = (ListView)v.findViewById(R.id.results); 
     return v; 
    } 

    @Override 
    public void onActivityCreated(Bundle savedInstanceState) { 
     super.onActivityCreated(savedInstanceState); 


     loadPage(dataBean.getWhat(), dataBean.getWhere(), dataBean.getPageStart()); 

     //resultsAdapter.setRssData(rssData); 
     //setListAdapter(resultsAdapter); 
    } 

    @Override 
    public void onCreate(Bundle savedInstanceState){ 
     super.onCreate(savedInstanceState); 
     Context context = getActivity().getApplicationContext(); 
     resultsAdapter = new ResultsAdapter(context); 
    } 





    /** 
    * Set List Adapter 
    */ 
    private void setAdapter(){ 
     if(listView.getAdapter() == null){ 
      listView.setAdapter(resultsAdapter); 
     } 
     else{ 
      resultsAdapter.notifyDataSetChanged(); 
     } 
    } 


} 
+0

ResultsAdapter(getActivity());這應該工作,我認爲。 –

回答

18

您必須擴展(而不是FragmentListfragment,並使用其ListFragment.setListAdapter設置你的適配器。在適配器getView()充氣你的行..那是所有

+0

無法從類型ListFragment –

+1

@SureshParmar對非靜態方法setListAdapter(ListAdapter)進行靜態引用,它不是靜態方法。如果你正在擴展'ListFragment',這個方法在'this'上。 – Blackbelt

10

如果你不想改變你的擴展類,你應該使用listview.setAdapter(...)方法。正如你在我的例子中看到的那樣:

ListView productList= (ListView) getActivity().findViewById(R.id.product_list); 


    SampleAdapter adapter = new SampleAdapter(getActivity()); 


    adapter.add(new SampleItem(
      "Sunny LCD TV 2\" SN022L66-T1 Full HD", 
      R.drawable.product_sample_pic); 


    productList.setAdapter(adapter); 
+0

@Johnson Page Not Found:( – Ahmed

+0

它解決了,但是幫助我這個http://stackoverflow.com/questions/29446088/how-to-get-alert - 對話微調值合的TextView – 2015-04-07 04:52:51

相關問題