我收到了一個使用JFeinstein的SlidingMenu庫的應用程序。 我正在使用導航ListView的自定義適配器。我沒有任何問題。ListView不顯示任何項目。 (從SlidingMenu到NavigationDrawer)
由於新的SupportLibrary版本引入了ActionBarCompat和NavigationDrawer,我想擺脫ActionBarSherlock和SlidingMenu,因爲我認爲這是一個依賴「官方」庫的更乾淨的解決方案。 今天我想用NavigationDrawer交換SlidingMenu庫。我沒有改動Adapter,改變了main.activity.xml,就像在d.android.com的官方教程中解釋的那樣。
但在ListView中沒有呈現任何項目。滑動效果很好,但我看不到任何物品。我沒有改變適配器上的任何東西,因爲它在SlidingMenu庫上效果很好。適配器#getCount()返回10 - 所以它最初不是空的。我還調用了Adapter#notifyDataSetChanged()以確保所有項目都會呈現,但Adapter#getView(...)永遠不會被調用。
如果我把另一個ListView放到MainActivity的佈局上(放入表示我內容的RelativeLayout中),這個ListView也不會顯示任何項目。 我複製了一些適用於SimpleAdapter的基本適配器示例,但即使使用此適配器,也沒有ListView顯示任何項目!
我在我的活動代碼:
private void setupSidemenu() {
// init sidemenu ui
DrawerLayout drawerLayout = (DrawerLayout)findView(R.id.drawer_layout);
ListView list = (ListView) findViewById(R.id.left_drawer);
menuAdapter = new SideMenuAdapter(getApplicationContext());
list.setAdapter(menuAdapter);
}