2013-12-14 223 views
0

我已經做了一個簡單的聯繫人應用程序,現在我想添加標籤視圖到這個應用程序。我正在按照教程here。下面是我的MainActivity.jave源代碼的一部分:添加標籤視圖android

public class MainActivity extends ListActivity { 

    private ListView contactListView; 
    private CursorAdapter contactListViewAdapter; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     contactListView = getListView(); // get ListView id 
     contactListView.setOnItemClickListener(viewContactListListener); 

     String[] from = new String[] { "familyName" }; // built an String array 
                 // named "from" 
     int[] to = new int[] { R.id.contactTextView }; 
     contactListViewAdapter = new SimpleCursorAdapter(MainActivity.this, 
       R.layout.contact_list_item, null, from, to); 
     setListAdapter(contactListViewAdapter); // set adapter 
    } 

我試圖改變「公共類MainActivity擴展ListActivity」到「公共類MainActivity擴展TabActivity實現OnTabChangeListener {」。但是,我收到錯誤「方法getListView()未定義的類型MainActivity」和其他類似的錯誤。我需要關於如何解決這個問題的建議。謝謝你的幫助。

回答

1

ListActivity提供一些幫助方法來管理ListView所以如果你想你的父活動改變從ListActivity你需要自己處理ListActivity行爲TabActivity。 基本上你需要獲得和存儲某個地方的ListView對象。像mListView = (ListView) findViewById(android.R.id.list)onCreate方法,然後實現的東西缺少方法

ListView getListView() 
{ 
    return mListView; 
} 

還設置你的適配器會有點不同。代替撥打setListAdapter(contactListViewAdapter); // set adapter,應該有contactListView.setAdapter(contactListViewAdapter);