Questions tagged «android-actionbar»

ActionBar是Android的窗口功能,可识别应用程序和用户位置,并提供用户操作和导航模式。

21
如何获得ActionBar的高度?
我试图在ActionBar每次创建活动时获取(使用Sherlock)的高度(特别是处理ActionBar高度可能发生变化的旋转配置变化)。 为此,我使用ActionBar.getHeight()仅在ActionBar显示时有效的方法。 当第一次创建的第一个活动,我可以调用getHeight()的onCreateOptionsMenu回调。但是此方法未在之后调用。 所以我的问题是何时可以调用getHeight()并确保它不会返回0?或者,如果不可能,如何设置ActionBar的高度?

9
如何自定义ActionBar上的后退按钮
我已经能够使用以下建议来自定义操作栏的背景,徽标图像和文本颜色: Android:如何将ActionBar“主页”图标更改为应用程序图标以外的其他内容? ActionBar文字颜色 ActionBar背景图片 我要自定义的最后一块是后退按钮图像。默认情况下它是灰色的,我希望它是白色的。更改颜色,指定可绘制对象或简单地使其透明(然后将V形符号添加到我的自定义徽标图像中)都可以。我该怎么办?


24
getActionBar()返回null
我有一个奇怪的问题。我正在使用targetsdk 13开发一个应用程序。 在我的主要活动的onCreate方法中,我调用getActionBar()来设置我的操作栏。在Android 3.2模拟器上运行时,此方法工作正常,但在使用Android 3.0和3.1时,该getActionBar()方法返回null。 我觉得这很奇怪,而且我看不出任何理由这样做。这是模拟器的错误,还是我需要做一些事情,以确保我的应用程序具有操作栏? 解决方案: 我想我已经找到了解决该问题的方法。我没有使用setContentView设置活动的布局。相反,我fragmentTransaction.add(android.R.id.content, mFragment, mTag)用来向活动添加片段。在3.2中可以正常使用,但是在早期的蜂窝版本中,如果您未在onCreate()方法中使用setContentView,则显然不会设置操作栏。因此,我通过在setContentView()方法中使用方法来修复它,onCreate()并为其提供了包含一个空FrameLayout的布局。我仍然可以fragmentTransaction.add(android.R.id.content, mFragment, mTag)像以前一样使用该方法。 这不是最漂亮的解决方法,但是可以解决。

12
使用片段时在Android导航抽屉图像和Up插入符之间切换
当使用导航抽屉时,Android开发人员建议在ActionBar中“仅导航抽屉中表示的那些屏幕实际上应该具有导航抽屉图像”,而“所有其他屏幕都具有传统的上克拉”。 有关详细信息,请参见此处:http: //youtu.be/F5COhlbpIbY 我正在使用一项活动来控制片段的多个级别,并且可以使Navigation Drawer图像在所有级别上显示和运行。 创建较低级别的片段时,我可以调用ActionBarDrawerToggle setDrawerIndicatorEnabled(false)来隐藏导航抽屉图像并显示Up插入符号 LowerLevelFragment lowFrag = new LowerLevelFragment(); //disable the toggle menu and show up carat theDrawerToggle.setDrawerIndicatorEnabled(false); getSupportFragmentManager().beginTransaction().replace(R.id.frag_layout, lowFrag, "lowerFrag").addToBackStack(null).commit(); 我遇到的问题是,当我导航回到Up克拉的顶层片段时,仍然显示而不是原始的Navigation Drawer图像。关于如何“刷新”顶层片段上的ActionBar以重新显示导航抽屉图像的任何建议? 解 汤姆的建议对我有用。这是我所做的: 主要活动 此活动控制应用程序中的所有片段。 在准备替换其他片段的新片段时,我setDrawerIndicatorEnabled(false)像这样设置DrawerToggle : LowerLevelFragment lowFrag = new LowerLevelFragment(); //disable the toggle menu and show up carat theDrawerToggle.setDrawerIndicatorEnabled(false); getSupportFragmentManager().beginTransaction().replace(R.id.frag_layout, lowFrag).addToBackStack(null).commit(); 接下来,在的替代中onBackPressed,我通过将DrawerToggle设置为如下来还原了上述内容setDrawerIndicatorEnabled(true): @Override …


11
如何通过菜单按钮在设备上强制使用溢出菜单
我想让所有不适合ActionBar的菜单项进入溢出菜单(从Action Bar到达的菜单项而不是菜单按钮),即使在具有Menu Button的设备上也是如此。对于用户而言,这似乎比将其放入单独的菜单列表中要直观得多,该列表要求用户仅从ActionBar的布局不适合他们在栏上的情况下就从触摸(屏幕)交互跳至基于按钮的交互。 在模拟器上,我可以将“硬件后退/主键”值设置为“ no”,并获得此效果。我已经在代码中寻找了一种方法来针对具有菜单按钮但无法正常使用的实际设备执行此操作。谁能帮我?


15
无法在Android Studio中加载未知错误的AppCompat ActionBar
以下是我的xml文件。在预览中,有两个错误“无法加载具有未知错误的AppCompat ActionBar”和“无法实例化多个类”。如何运行该应用程序。但是该应用程序崩溃了,并且在Logcat中未显示任何错误。 这是我的预览屏幕截图 <?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:openDrawer="start"> <include layout="@layout/app_bar_main" android:layout_width="match_parent" android:layout_height="506dp" /> <LinearLayout android:id="@+id/layout_main" android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:weightSum="1" tools:context=".Activity.MainActivity"> <LinearLayout android:id="@+id/main_layout" android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="0.7" tools:context=".Activity.MainActivity"> <!-- our tablayout to display tabs --> <android.support.design.widget.TabLayout android:id="@+id/tabLayout" android:layout_width="match_parent" …

18
从Android的操作栏中删除图标/徽标
我一直在尝试找到从操作栏中删除图标/徽标的方法,但是经过一个小时的搜索之后,我唯一发现的内容是,如何从Android的文档和Google中整体删除标题栏。那不是我想要的。只想从标题栏中删除图标/徽标。 有人知道如何做到这一点吗?最好是我想用XML做到这一点。


27
如何永久禁用操作栏
我可以使用以下代码在蜂窝中隐藏操作栏: getActionBar().hide(); 但是当键盘打开并且用户复制粘贴任何内容时,操作栏将再次显示。如何永久禁用操作栏?


5
如何在Android工具栏上使用SearchView
我正在使用的代码正在使用a Toolbar并对a 进行膨胀menu。 这是代码 private Toolbar mToolbar; mToolbar.inflateMenu(R.menu.chat_screen_menu); setupMenu (); private void setupMenu () { mMenu = mToolbar.getMenu(); if (mMenu != null) { if (mChatPager != null && mChatPager.getCurrentItem() > 0) { mMenu.setGroupVisible(R.id.menu_group_chats, true); mMenu.setGroupVisible(R.id.menu_group_contacts, false); } else { mMenu.setGroupVisible(R.id.menu_group_chats, false); mMenu.setGroupVisible(R.id.menu_group_contacts, true); mMenu.setGroupVisible(R.id.menu_group_otr_verified,false); mMenu.setGroupVisible(R.id.menu_group_otr_unverified,false); mMenu.setGroupVisible(R.id.menu_group_otr_off,false); } } mToolbar.setOnMenuItemClickListener(new OnMenuItemClickListener …


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.