2011-10-01 18 views
13

Özel bir satır istiyorum, bu yüzden bir xml'de Liste Görünümü kullanıyorum ve bir bölüme şişiriyorum. List View için adaptörün nasıl ayarlanacağı konusunda kafam çok karışık. Base Adapter'ü genişleten yeni bir adaptör oluşturdum. GetView yönteminde, row.xml düzenini şişirirken hangi içeriğin geçeceğini gerçekten bilmiyorum. Listenin bağdaştırıcısını nasıl ayarlayabilirim ve nerede?liste görünümü bağdaştırıcıyı bir parçayı android olarak ayarlama

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()); Bu çalışması gerektiğini düşünüyorum. –

cevap

18

Sen Listfragment (yerine Fragment arasında) uzatmak, ve adaptör ayarlamak için onun ListFragment.setListAdapter kullanarak gerekir. Bağdaştırıcıda getView() Satırınızı şişirin .. bu tüm

+0

Statik olmayan bir yöntem setListAdapter (ListAdapter) StatFile –

+1

@SureshParmar türünden statik bir başvuru yapamaz, bu statik bir yöntem değildir. Eğer 'ListFragment' genişliyorsanız, yöntem 'bu'da – Blackbelt

10

Genişletilmiş sınıfınızı değiştirmek istemiyorsanız, listview.setAdapter(...) yöntemini kullanmalısınız. Örneğimde gördüğünüz gibi:

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 Sayfa Bulunamadı :( – Ahmed

+0

çözüldü ama bana yardım et bu http://stackoverflow.com/questions/29446088/how-to-get-alert -dialog-değiştirici-değerleri-in-textview –

İlgili konular