【问题标题】:Disable buttons, edit texts禁用按钮,编辑文本
【发布时间】:2019-01-08 20:06:34
【问题描述】:

在我的应用程序中,我使用的是自定义ProgressBar。我已经使用了图像和ProgressDialog 来产生阴影background 的效果。问题是所有ButtonEdittext 仍然是clickable 提供的图像层在它上面。我的图像 opacity 设置为 40%。我设置的图像不是clickable,也没有启用。但没有什么能阻止我的 ButtonEdittext 字段可点击。

点赞按钮仍然可以点击,但是上面有一个图像层。

【问题讨论】:

  • 请分享一些视图图片
  • @sukhbir 我添加了图片
  • 请添加您的布局代码
  • @sukhbir 布局代码太大
  • @sukhbir 我想禁用共享、信息、收藏三个按钮,方法是在其上方放置一个图像视图但不透明度降低。

标签: android android-edittext progressdialog android-button android-progressbar


【解决方案1】:

您可以为您的图片设置 clickable=true。所以它会拦截点击事件,不会传递给这个视图下的任何其他按钮

【讨论】:

    【解决方案2】:

    您使用此代码使按钮不可点击:

    Java:

    yourButton.setEnabled(false);
    

    XML:

     android:enabled="false"
    

    你也可以用这段代码让它们消失:

    Java:

     yourButton.setVisibility(View.GONE);
    

    XML:

     android:visibility="gone"
    

    【讨论】:

    • 我不想那样做。因为在很多应用程序中我的应用程序中有很多这样的实例。这就是为什么我使用图像视图来禁用它们,但这主要是由于图像的不透明度而没有发生
    • @MohammadAamir 您可以自定义一个不透明度为 40% 的形状,然后将该 imageView 的背景设置为该形状,这样 imageView 的不透明度为 100%
    • 这没有帮助
    【解决方案3】:

    你为什么不设置
    parent.setEnabled(false)
    给他们的父母,无论是toolbar 还是layout
    并在任务完成后将其恢复到
    parent.setEnabled(true)?

    【讨论】:

      【解决方案4】:

      我找到了解决方案。我在所有小部件(如按钮、编辑文本字段和 setZ(float value))上方放置了一个图像,该图像在代码中更高。即 imageView.setZ(1000)。因此,图像下方的任何内容都是可见的,但不可点击。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-10-09
        • 1970-01-01
        • 2019-05-25
        • 2015-07-21
        • 2016-04-07
        • 1970-01-01
        • 2019-09-21
        • 1970-01-01
        相关资源
        最近更新 更多