繁体   English   中英

透明的Android上下文操作栏

[英]Transparent of Android Contextual Action Bar

在Andriod WebView上的TextEdit上长按时,将显示一个contextic动作栏(CAB)。

我指定了以下样式,以避免布局中断,但菜单没有变得透明并隐藏TextEdit。 为了使该菜单透明,我应该写些什么?

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="AppTheme" parent="android:Theme.Holo">
        <item name="android:actionBarStyle">@style/AppStyle</item>
        <item name="android:windowActionModeOverlay">true</item>
    </style>
    <style name="AppStyle" parent="android:Widget.Holo.ActionBar">
        <item name="android:colorBackground">#00000000</item>
    </style>
</resources>

隐藏文字

为您的颜色创建资源并从那里引用它们:

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">

    <color name="transparentBlack">#00000000</color>

</resources>

将AppStyle更改为此:

<style name="AppStyle" parent="android:Widget.Holo.ActionBar">

    <item name="android:background">@color/transparentBlack</item>

</style>

主要区别是背景与colorBackground,我不确定是否有功能上的区别,但是我知道,当我比较工作透明的操作栏样式和您的操作栏样式时,这几乎是唯一的区别。

您可以尝试仅将android:colorBackground更改为android:background,看看是否能单独使用,但我发现最好使用引用而不是直接对颜色进行硬编码。 如果您只想更改一个,请单独尝试看它们是否可以解决您的问题。

截至2014年22月22日的新建议

为什么不隐藏操作栏(mSpecialActionBar.hide();),然后为Activity实现View.OnLongClickListener。 然后,您可以长按一次再次显示操作栏(mSpecialActionBar.show();)。 或类似的东西。

@Override
public void onLongClick(View v) {

    if (v.getClass() == TextEdit) {

       mSpecialActionBar.show();

    }
} // end-of-method onLongClick  

这是我发现有用的资源: http : //java.dzone.com/articles/contextual-action-bar-cab

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM