2011-10-01 4 views
13

맞춤 행이 필요하므로 XML로 목록보기를 사용하고 조각으로 팽창했습니다. 목록보기에서 어댑터를 설정하는 방법에 대해 매우 혼란 스럽습니다. 베이스 어댑터를 확장하는 새 어댑터를 만들었습니다. 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

당신은 Listfragment (대신 Fragment의) 확장, 어댑터를 설정하기 위해 ListFragment.setListAdapter를 사용해야합니다. 어댑터에서 getView() 행을 팽창하십시오. 해당 사항 없음

+0

비 정적 메소드 setListAdapter (ListAdapter)에 대한 정적 참조를 ListFragment –

+1

@SureshParmar 유형에서 만들 수 없으며 정적 메소드가 아닙니다. '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 -dialog-spinner-values-in-textview –