android - 如何在操作栏中扩展导航列表?

标签 android android-actionbar navigation-drawer

在 android 中,您可以通过传递微调器适配器和 OnNavigationListener 在操作栏中设置导航列表。问题是导航列表没有填满大部分操作栏,如何让它像 gmail 应用程序一样扩展: Gmail 应用示例:

enter image description here

我的应用:

enter image description here

代码如下:

//... setting the array adapter
ActionBar actionBar = getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
NavigationListener navigationListener = new NavigationListener();
ListAdapter listAdapter = new ListAdapter();
actionBar.setListNavigationCallbacks(listAdapter, navigationListener);
actionBar.setDisplayShowTitleEnabled(false);

我面临的另一个问题是微调项的大小,它们显示得非常小,是因为我没有通过自定义 TextView (查看屏幕截图)吗?我所做的例子:

private class ListAdapter extends BaseAdapter implements SpinnerAdapter {

    public View getView(int pos, View view, ViewGroup viewGroup) {
        TextView text = new TextView(context);
        text.setText(arrayAdapter.getItem(pos).toString());
        return text;
    }

}

最佳答案

您想实现 getDropDownView方法也。这使您可以使用所需的指标和格式为下拉列表提供不同的 View 。

考虑为这些情况膨胀框架布局 android.R.layout.simple_spinner_itemandroid.R.layout.simple_spinner_dropdown_item。使用 findViewById(android.R.id.text1) 获取您应该在每个中填写的 TextView

关于android - 如何在操作栏中扩展导航列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8965609/

相关文章:

android - 如何使 TextView 看起来像 Button?

android - actionbar setnavigationmode 弃用

android - 如何更新状态栏颜色并使其在抽屉上透明

android - Android NavigationDrawer 中的深色背景

android - 为什么在 Android 5 (Lollipop) 上可以直接从其他线程更改 UI View ?

android - 创建屏幕键盘 (android)

从播放列表中检索时的 Android 歌曲 ID 与我从媒体中检索时的不同

android - 如何更改android中actionBar上的下拉菜单样式?

java - 访问自定义 NavigationDrawer 内的项目

java - 安卓导航组件 : Navigation Drawer not reacting