Articles of android actionbar

如何在运行时添加操作栏项

如何在运行时添加操作栏项? 我正在使用actionBarSherlock ,我需要在事件发生时添加一些按钮(例如,从RSS获取一些文本)。 我不能依赖固定的xml。

Android支持工具栏colorControlNormal颜色

我想将我的微调器颜色设置为白色,同时保持我主题中的其他元素为默认颜色。 情况如下: 风格是: @color/primary @color/primary_dark @color/theme_tint <!– #FFFFFF –> true false sans @color/background_primary #FFFFFF 如果我要在App主题中放置#FFFFFF (上面已注释掉),那么微调器下拉将执行白色但是checkbox也将变为白色。 那么我怎样才能让微调器变成白色?

Android:你如何隐藏ActionBar中的Tabs?

我需要暂时隐藏我为ActionBar定义的Tab对象。 Tab对象上没有setVisibility方法,所以我不知道如何实现这一点。

以编程方式设置android:showAsAction =“ifRoom | withText”

是否有可能按照这里建议设置标志android:showAsAction=”ifRoom|withText”编程方式?

Android – 活动主页/向上箭头具有SDK 24的额外填充/边距

我刚刚将我的应用从使用SDK 23更新到SDK 24。 我的活动出现了一个问题,即显示Up / Home箭头(即getSupportActionBar().setDisplayHomeAsUpEnabled(true) ),因为现在在向上箭头和活动标题之间存在额外的(不需要的)空间。 对于没有向上箭头的活动,活动标题与之前完全相同,这表示额外的填充/边距与向上箭头相关联,而不是与活动标题相关联。 我的问题是如何更改布局,使其与SDK 23看起来与SDK 23相同? 使用SDK 23在向上箭头和标题之间的小差距: 使用SDK 24在向上箭头和标题之间存在较大(不需要的)差距: 这是我的旧build.gradle(SDK 23): apply plugin: ‘com.android.application’ android { compileSdkVersion 23 buildToolsVersion “23.0.3” defaultConfig { applicationId “com.example.myapp” minSdkVersion 19 targetSdkVersion 23 versionCode 42 versionName “0.42” } buildTypes { release { minifyEnabled true proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’ } } packagingOptions { exclude ‘META-INF/DEPENDENCIES’ exclude […]

Android:以编程方式更改整个应用布局方向

如何将整个应用布局方向更改为RTL? 我正在编写一个应用程序,用户必须在首次启动时选择它的语言,并且布局应根据用户选择更改为RTL或保持LTR。 我曾经为AndroidManifest添加了android:supportsRtl=”true” ,并为每个布局添加了android:layoutDirection=”rtl” ,但这种方法存在如下问题: 一个问题是当我将方向更改为RTL时, ActionBar主页图标或导航按钮(当启用了主页时)仍然是LRT并且只是向右移动。 我也试图以编程方式改变方向,结果是一样的: if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1){ getWindows().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_RTL); } 有没有办法强制所有活动一次成为RTL,或者我们应该分别在每个活动中设定方向?

Android状态栏与ActionBar重叠

我知道我可以使用requestFeature(Window.FEATURE_ACTION_BAR_OVERLAY)制作ActionBar叠加层 并且可以在我的屏幕中切换/显示状态栏(通过在FLAG_FULLSCREEN和FLAG_FORCE_NOT_FULLSCREEN之间切换)。 这很好用。 但是,当我切换状态栏时,我不希望我的布局移动。 我知道我可以使用以下内容使状态栏“覆盖”(尽管不透明)内容: WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS 这也很好,除了(预期的)后果,当使用ActionBar时,ActionBar被截止一半 – 其中一半基本上在状态栏下。 所以我想知道,在这种情况下,有没有办法通过状态栏的高度“移动ActionBar”? 我知道在更糟糕的情况下,我可以使用位于布局中的自定义视图来执行此操作,但我宁愿不这样做(希望从ActionBar中受益)。 谢谢!

样式不确定ActionBar上的进度条

我想在操作栏上设置progressBar但是设置 requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); setProgressBarIndeterminateVisibility(true); 在onCreate方法上产生一个中等大小的progressBar(48dip x 48dip)我想。 我想改变progressBar的大小,但我找不到如何做到这一点。 你能帮我吗?

找出ActionBar是否堆叠

如果您向ActionBar添加选项卡,它们将在纵向模式下的手机上处于额外的堆叠ActionBar中。 有没有一种简单的方法可以确定是否发生了这种情况? 我附上了YouTube应用的两个屏幕截图。 第一个显示正常的ActionBar其中包含选项卡,第二个显示堆叠的ActionBar中的选项卡。

以前的片段在新片段下可见

我有一个tab + ViewPager布局,在其中一个选项卡中我有一个列表视图。 当我在onclick上替换该列表片段时,我仍然可以看到新片段下的旧片段。 看到: 码: FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction transaction = fragmentManager.beginTransaction(); HallsInStateFragment hallsForState = new HallsInStateFragment(); transaction.replace(R.id.container, hallsForState); transaction.addToBackStack(null); transaction.commit(); R.id.container是视图中的FrameLayout。