Articles of android actionbar

如何用我的主题指定黑暗的行动模式

我知道有两个关于样式的动作栏的上下文动作栏(ActionMode)的一些问题,但他们似乎并没有解决我之后的东西。 我正在使用带有浅色主题和黑暗操作栏的工具栏。 工具栏看起来像我想要的,但行动模式看起来像普通的黑暗主题。 我需要改变我的风格,以获得黑暗的主题行动模式(不只是行动栏)? 看来我应该能够通过点击进入Theme.AppCompat快速地做到这Theme.AppCompat因为这显示了CAB我想要的,但我不希望其他应用程序变黑。 我只关心API 14+,并使用支持工具栏代替操作栏。 这是我的基本风格 <style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar"> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="android:actionModeBackground">@color/colorActionMode</item> <item name="android:windowActionModeOverlay">true</item> </style> 工具栏样式 <style name="AppTheme.Toolbar" parent="ThemeOverlay.AppCompat.Dark.ActionBar"> <item name="android:textColorPrimary">@color/abc_primary_text_material_dark</item> <item name="actionMenuTextColor">@color/abc_primary_text_material_dark</item> <item name="android:textColorSecondary">@color/abc_primary_text_material_dark</item> <item name="android:background">@color/colorPrimaryDark</item> </style> 工具栏布局文件(在这里设置popupTheme似乎没有任何影响)。 <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?android:attr/actionBarSize" app:theme="@style/AppTheme.Toolbar" app:popupTheme="@style/ThemeOverlay.AppCompat.Dark" android:popupTheme="@style/ThemeOverlay.AppCompat.Dark" android:elevation="2dp" android:focusable="false"/> 这是我的工具栏(这是我想要的) 这是我的ActionMode(我需要反转) 这是我想要的动作模式看起来像(我通过改变我的风格从Theme.AppCompat而不是Theme.AppCompat.Light.DarkActionBarinheritance而来的。问题是,其余的应用程序变暗,我不想。

ActionBar容量/溢出没有改变方向的变化

我有一个应用程序使用ActionBar,我自己处理方向的变化: android:configChanges="keyboard|keyboardHidden|orientation|screenSize" …和菜单应适合在ActionBar没有横向溢出,但不是肖像: <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:title="@string/Game" android:id="@+id/game" android:icon="@android:drawable/ic_menu_manage" android:showAsAction="ifRoom|withText"/> <item android:title="@string/Type" android:id="@+id/type" android:icon="@android:drawable/ic_menu_edit" android:showAsAction="ifRoom|withText"/> <item android:title="@string/Other" android:id="@+id/other" android:icon="@android:drawable/ic_menu_gallery" android:showAsAction="ifRoom|withText"/> <item android:title="@string/Solve" android:id="@+id/solve" android:icon="@android:drawable/ic_menu_directions" android:showAsAction="ifRoom|withText"/> <item android:title="@string/Help" android:id="@+id/help" android:icon="@android:drawable/ic_menu_help" android:showAsAction="ifRoom"/> </menu> 在启动时,这可以正常工作: 景观: 肖像: (是的,我可以强制所有项目始终显示,他们将适合,如下所示,但可能会在一个较小的平板电脑上打破) 当模拟器改变方向时,ActionBar的容量似乎没有改变: 肖像,当我开始在风景: (这是好的,但不一致) 风景,当我开始肖像: 这看起来非常愚蠢,是我想解决这个问题的原因。 我把这个调用添加到invalidateOptionsMenu() ,但是没有帮助: @Override public void onConfigurationChanged(Configuration newConfig) { maybeMoveSomeViewsAround(newConfig); super.onConfigurationChanged(newConfig); invalidateOptionsMenu(); } […]

自定义样式的堆叠动作栏?

我想有堆叠和非堆叠标签栏单独的背景。 这应该解释一下: 所以我拥有的方式是: 对于平板电脑,使用深色背景选项卡 对于其他一切,使用浅色背景。 这涵盖了大多数的使用案例,但是我想让它在电话环境中看起来不坏。 任何方式,我可以做到这一点? 也许我错过了一个风格修饰符?

如何保持在ActionBar的右侧扩展SearchView(使用自定义图标时)?

我的问题是密切相关的SearchView错误的alignment和在ActionBar中展开时的SearchView位置,但在那里发布的答案不起作用。 所以,我在Action Bar中使用了一个SearchView : <item android:id="@+id/action_search" android:icon="@drawable/navi_search" android:title="@string/action_search" android:showAsAction="ifRoom|collapseActionView" android:actionViewClass="android.widget.SearchView" /> 它默认看起来像这样(右上angular,溢出菜单旁边): 问题是,当展开时, 我希望SearchView保持在右侧 ,而是移动到主页button(应用程序图标)旁边的左侧边缘。 我试着改变showAsAction这两个( 这里build议 ): android:showAsAction="ifRoom" android:showAsAction="always" …这样做可以在展开时修复alignment方式,但是在折叠状态下自定义图标会丢失 : 此外,菜单<item>上的诸如android:layout_alignParentRight="true"和android:layout_centerInParent="true"之类的<item>没有任何效果。 有任何想法吗? 我的目标是Android 4.0及以上版本: <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" />

我如何在Android支持库中使用上下文操作栏?

我有一个ListView在我的ActionBarActivity有项目,可以长按其他操作。 我目前正在使用registerForContextMenu并显示一个难看的popup对话框,所以我想将其更改为使用一个属性操作栏。 我怎样才能做到这一点? CHOICE_MODE_MULTIPLE_MODAL以及其他一些东西似乎是API 11+。

ActionBar和ActionBar.Tab和导航抽屉安卓

我在android-support-v7-appcompat的帮助下使用了操作栏,并在其上使用了Navigation drawer。 在我的片段之一,如果我使用ActionBar.Tabs然后选项卡重叠导航抽屉和抽屉获取下面的ActionBar选项卡。 如何在Google Play应用程序或Google电影应用程序中制作操作栏 标签也应该像片段一样落后。 我怎么能做到这一点与android-support-v7-appcompat库

当活动在android中启动时,在标题栏中隐藏应用程序启动器图标

我search了,但没有发现类似的问题,因为我不知道如何在句子中分阶段。 我正在使用ActionBarSherlock,它带有一个标志,而不是启动器图标(即72×72图标),文本位于活动的顶部。 当活动首次加载时,几分之一秒。 我看到在清单中定义的启动器图标和标签(如下所示),在带有徽标的操作栏出现之前。 这个家庭活动非常简单,所以它不会做任何额外的负载,这可能会导致延迟。 <application android:hardwareAccelerated="true" android:icon="@drawable/launcher_icon" android:label="@string/app_name" android:screenOrientation="portrait" > <activity android:name=".SplashScreenActivity" android:label="@string/app_name" android:logo="@drawable/ab_logo" android:theme="@android:style/Theme.Light.NoTitleBar" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".HomeActivity" android:label="@string/homeitle" android:logo="@drawable/ab_logo" android:theme="@style/MyTheme" > </activity> </application> 我可以通过将文本样式设置为与背景相同的颜色来使文本“消失”,但是我无法find从活动中删除/隐藏启动器图标的方法。 我已经设置了一个启animation面活动(如上面的清单),它只是加载我的家庭活动发生问题。 这确实有帮助,但有时在加载活动时仍然会出现问题。 public class SplashScreenActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public void onResume() […]

如果没有空间,操作栏将制表符转换为列表导航

我有一个标志,标题,2个选项卡和searchfunction的操作栏。 在手机(3.5英寸)上一切正常,操作栏有两行,标题标题和searchfunction出现在第一行,标签apear在第二行。 在我的平板电脑上(7“),每一行都显示在一行上,但是当我点击search图标时,这些标签将被转换成列表。 我怎样才能拆分(sherlock)在我的7“tabblet两行中的行动?还是有其他方法来解决这个问题?

更改每个选项卡在Android上滑动的操作栏标题

我已经使用ActionBarSherlock和Fragments设置了滑动选项卡的操作栏。 我想为每个选项卡有不同的操作栏标题。 如果我可以设置图像而不是标题,这将是非常好的,所以每个标签会有不同的操作栏图像标题。 我将不胜感激任何build议和链接教程! 谢谢:) 这里是我的代码:TabActivity.java package com.tptabs; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import com.actionbarsherlock.app.ActionBar; import com.actionbarsherlock.app.SherlockFragmentActivity; import android.support.v4.view.ViewPager; public class TabActivity extends SherlockFragmentActivity { private ViewPager mViewPager; private TabAdapter mTabsAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mViewPager = new ViewPager(this); mViewPager.setId(R.id.pager); setContentView(mViewPager); final ActionBar bar = getSupportActionBar(); bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); mTabsAdapter = new TabAdapter(this, […]

基于自定义操作提供程序的垂直(旋转)文本项的Android ActionBar菜单

我正在添加一个菜单到一个操作栏项目。 菜单将包含每个项目的垂直文本。 菜单包含的内容并不重要。 我基本上只是想创build自己的视图,当我按下一个操作栏项目时会popup。 所以就这个问题而言,你可以把我的观点想象成一个大黑箱。 右边的图片是用GIMP制作的。 这是我正在做的,而不是我已经完成的。 我曾经尝试过 为了使用材质devise主题更新旧的应用程序,我一直在浏览Android文档中的所有课程,以添加应用程序栏 。 由于我的垂直文本菜单不适合常见的情况下,我必须做一个自定义的操作提供程序。 尽pipe如此,该文档没有提供自定义操作提供程序的完整示例。 我能find的最好的是这个堆栈溢出的答案 。 下图显示了我已经能够做的最好的事情(用一个黑色的视图代表我的未来菜单): 上图中的明星目前有行动提供者。 但是,自定义视图会在操作栏中被剪掉。 我如何让它漂浮在一切? 此外,我不希望它出现,直到我点击的行动栏项目。 目前,它只是马上显示。 码 MainActivity.java public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // setup toolbar Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar); setSupportActionBar(myToolbar); … } public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = […]