【问题标题】:Action Item not clickable in Android ActionBarAndroid ActionBar 中的 Action Item 不可点击
【发布时间】:2013-09-23 13:37:59
【问题描述】:

我有一个带有此项目的 ActionBar:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    [...]
    <item android:id="@+id/status_service"
        android:icon="@drawable/network_service"
        android:title="@string/status_service"
        android:showAsAction="always|withText|collapseActionView"/>
</menu>

但我不希望它是一个按钮。是一种将其设置为不可点击的方法。布局和外观都很好。 enabled=false 可以完成这项工作,但它也会改变文本的颜色,我希望它只是不可点击。

谢谢!

【问题讨论】:

    标签: android xml android-layout android-actionbar


    【解决方案1】:

    从代码中,您可以使用MenuItem setEnabled(false),作为details
    或者,在您的布局中:

    MenuItem item = menu.findItem(R.id.your_item);
    item.setVisible(true);
    item.setEnabled(false);
    

    或者,在您的 menu.xml 中,在 item 中添加以下属性

    android:enabled="false"
    

    下面的代码来改变 textColor // 如果您使用的是菜单项。 @覆盖 public boolean onMenuItemSelected(int featureId, MenuItem item) { // 在这里改变你想要的样式

        return true;
    }
    

    当您使用 Button 时,您可以执行以下操作。

    button = (Button)R.id.buttonId;
      if(button.isenable)
      {
        button.setTextColor(Color.parseColor("#FFBBFF")); //color code
       }
    

    【讨论】:

    • 是的,这就是我所做的......但它使文本变成灰色,好像它是一个禁用的按钮。我想要一个像标签一样的“外观”,而不是一个禁用的按钮:)谢谢你的回答!
    • 当item被禁用时,您可以更改获取id并将文本颜色逻辑设置为_your_preferred_color。
    • 好主意.. 但你是怎么做到的?我试过但没有成功,因为项目的文本颜色似乎是不可变的。
    • 你在使用按钮吗?
    • 默认情况下它们是按钮,因为它们是菜单项......不是吗?抱歉,我正在维护一些我没有写的东西,而写的人不在 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-18
    • 2014-08-11
    • 1970-01-01
    • 2015-09-26
    • 2019-10-20
    相关资源
    最近更新 更多