2015-01-20 59 views
-2

我可以設法創建一個帶有尋呼機(滑動選項卡)的TabAdapter,它爲每個實現一個ListFragment。然後我通過字符串打電話給我的物品。這工作得很好。 但是這裏的ListView實現純文本。 我的問題:如何實現具有自定義行(文本和圖像)的自定義ListView? 這裏是我的代碼:帶有自定義ListView的選項卡和尋呼機

.MainActivity

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    pager = new ViewPager(this); 
    pager.setId(R.id.pager); 
    setContentView(pager); 

    final ActionBar bar = getActionBar(); 
    bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 

    mTabsAdapter = new TabsAdapter(this, pager); 
    mTabsAdapter.addTab(bar.newTab().setText("Grundlagen"), ListViewTabGrundlagen.class, null); 
    mTabsAdapter.addTab(bar.newTab().setText("Anästhesie"), ListViewTabAnaesthesie.class, null); 

} 

ListViewTabGrundlagen

public class ListViewTabGrundlagen extends ListFragment { 
    String[] list_items; 

    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){ 
     View rootView = inflater.inflate(R.layout.list, container, false); 
     list_items = getResources().getStringArray(R.array.listGrundlagen); 
     setListAdapter(new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, list_items)); 

     return rootView; 
    } 
} 

list.xml

<?xml version="1.0" encoding="utf-8"?> 
<ListView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/list" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 


</ListView> 

activity_main.xml中

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context=".MainActivity" > 

    <android.support.v4.view.ViewPager 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:id="@+id/pager" /> 

</RelativeLayout> 

任何解決方法? 非常感謝!

+0

根據列表項的佈局爲您的列表視圖編寫自定義適配器.. – akash93 2015-01-20 22:05:13

回答

0

您需要查找自定義適配器,您可以從擴展BaseAdaper或ArrayAdapter並覆蓋類中正確的方法開始。

+0

但是,如何在活動已經擴展ListFragment的同時擴展BaseAdapter? – 2015-01-21 20:02:43

+0

您需要通過擴展BaseAdapter類來創建適配器類,然後可以通過調用setListAdapter()方法在列表視圖類中設置適配器的對象。 – 2015-01-23 05:02:20

相關問題