首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Xamarin Android自定义Seekbar外观禁用

Xamarin Android自定义Seekbar外观禁用
EN

Stack Overflow用户
提问于 2018-06-12 03:47:44
回答 1查看 262关注 0票数 0

我正在写一个应用程序,它使用搜索栏来控制音量。我想让搜索栏更粗,所以我实现了一个基于Android - How to change default SeekBar thickness?的自定义搜索栏

一切都运行得很好,除了现在我想禁用控件时,它会禁用功能,但不会改变它的视觉外观。在应用自定义搜索栏之前,禁用该控件会使其变为灰色,以便用户知道它已被禁用。

有人知道我不能设置什么自定义控件的样式吗?

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:id="@android:id/background">
    <shape
        android:shape="line">
      <stroke
          android:color="@color/seek_bar_background"
          android:width="@dimen/seek_bar_thickness"/>
    </shape>
  </item>

  <item android:id="@android:id/progress">
    <clip>
      <shape
          android:shape="line">
        <stroke
            android:color="@color/seek_bar_progress"
            android:width="@dimen/seek_bar_thickness"/>
      </shape>
    </clip>
  </item>

  <item android:id="@android:id/secondaryProgress">
    <clip>
      <shape
          android:shape="line">
        <stroke
            android:color="@color/seek_bar_secondary_progress"
            android:width="@dimen/seek_bar_thickness"/>
      </shape>
    </clip>
  </item>
</layer-list>

一定有某种<item android:id="@android:id/disabled">属性?我已经找过了,但是找不到任何东西,其他所有设计搜索栏样式的人似乎都没有使用任何其他的项目属性。

EN

回答 1

Stack Overflow用户

发布于 2018-06-12 04:57:20

我已经能够通过使用选择器来实现这一点。

基本上,我的使用搜索栏元素的axml文件调用

android:progressDrawable="@menu/seek_style_selector"
android:thumb="@menu/seek_thumb_selector"

这些选择器是实现项android:state_enabled="false"的两个新文件

<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_enabled="false" android:drawable="@menu/seek_disabled"></item>
    <item android:drawable="@menu/seek">   
  </item>
</selector>

因此,如果它被禁用,它将使用seek_disabled文件,该文件对元素具有不同的不透明度。否则,它将继续使用正常的查找文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50805022

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档