2009-12-12 72 views
0

我正在處理我的第一個Android項目,並且我通過XML方法創建了一個菜單。我的活動非常基本,因爲它加載了主佈局(包含一個ListView和我的String數組選項)。這裏是我的活動裏面的代碼:在ListView中解釋項目點擊

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    // allow stuff to happen when a list item is clicked 
    ListView ls = (ListView)findViewById(R.id.menu); 
    ls.setOnItemClickListener(new OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
      // @todo 
     } 
    }); 
} 

內onItemClick回調處理程序,我想檢查單擊了哪個項目,並加載基於這樣一個新的菜單。

問題1:如何確定哪個項目被點擊?我找不到任何關於檢索/測試點擊項目的值的簡單示例。

問題2:一旦我有id的值,我假設我可以再次調用setContentView方法更改爲包含我的新菜單的另一個佈局。那是對的嗎?

回答

1

我的工作我的第一個Android 項目,我創建通過 XML方法的菜單。

實際上,Android有一個單獨的菜單概念,所以我會對這些術語描述你的UI有點謹慎。

我該如何確定哪個 項目被點擊?

如果您使用的是ArrayAdapter,該position參數傳遞給onItemClick()是索引您的陣列。

我以爲我可以再次調用 的setContentView方法來改變 包含我的新 菜單另一個佈局。那是對的嗎?

是的,雖然可能會有更好的UI方法,將會更Android-y。大多數Android應用程序在開始實際操作之前不會從某種多層導航開始。