在Android 5.0 API 21 Lollipop中,SeekBar的拇指不透明

55

API级别 < 21

拇指是透明的,如预期。

Nexus 5上运行Android 4.4.4的屏幕截图

在API级别21上

拇指是不透明的,不知道为什么。

Nexus 5上运行Android 5.0的屏幕截图

以下是代码

 <SeekBar
                android:id="@+id/ui_audioplayer_progressbar"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:progressDrawable="@drawable/custom_progress_bar_horizontal"
                android:thumb="@drawable/stud_slider" />

有趣的是,当您更改API级别时,可以在eclipse中的xml预览中看到并复制此问题。

选择API级别21时

选择API级别19时

注意:

  • 我在两台设备上运行了相同的apk。
  • 两个设备都是相同的型号,即Nexus 5。
  • 拇指图像是具有透明背景的PNG,从API级别 < 21的屏幕截图中可以看出

这是Lollipop中已知的bug还是我做错了什么?


1
@alanv 那是同样的问题。感谢指出。但我认为问题标题不够描述性。不编辑那个问题,把这个留在这里,这样人们可以用任何一个查询来搜索答案。 - Vinay W
2个回答

155
<SeekBar
    ....
    android:splitTrack="false" 
/>

当我在我的SeekBar中使用属性android:splitTrack =“false”时,我遇到了一个错误,“在包'android'中找不到属性'splitTrack'的资源标识符”。请帮帮我。 - Dennis Mathew
3
明白了:)。当我将目标API级别设置为21时,问题得到解决。 - Dennis Mathew
2
你是怎么想到这个的? - Ryhan

12

对于所有 API 级别,

<Seekbar
    .....
    android:background="@null"
    android:splitTrack="false"
    ....
 />

可以运作。对我而言已经成功了。


救了我的一天+1,还可以在Android drawable上工作,这也被实现在ImageView上,所以将ImageView背景设置为@null。 - sanjeeb

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接