标准Seekbar的进度行不会出现

时间:2017-08-01 13:09:47

标签: android samsung-mobile android-7.0-nougat

我发现SeekBar存在问题。在Android 4,5,6的设备上我没有这样的问题,但在三星S8上出现了Android 7问题的进展线。如果我删除旋转参数,SeekBar变为水平并且问题消失,但我需要标准的垂直SeekBar。 更新:Nexus仿真器API 24(Android 7)上的相同问题。  我在Android 6(LG,索尼)和Android 7(三星S8)上运行的应用程序附加了2个屏幕截图,代码为:

    <SeekBar android:id="@+id/seekBar"
    android:layout_width="100dp"
    android:layout_height="42dp"
    android:background="#20FFFFFF"
    android:rotation="270"
    android:layout_gravity="center"
    >
</SeekBar>

和完整代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <ImageView
        android:id="@+id/icon"
        android:layout_width="42dp"
        android:layout_height="24dp"
        android:paddingTop="6dp"
        android:background="#20FFFFFF"
        android:layout_gravity="center"
        android:src="@drawable/iconvolume" />
    <LinearLayout
        android:layout_width="42dp"
        android:layout_height="100dp"
        android:gravity="center">

    <SeekBar android:id="@+id/seekBar"
        android:layout_width="100dp"
        android:layout_height="42dp"
        android:background="#20FFFFFF"
        android:rotation="270"
        android:layout_gravity="center"
        >
    </SeekBar>
    </LinearLayout>

</LinearLayout>

Android 7

Android 6

1 个答案:

答案 0 :(得分:4)

我遇到了这个问题,尝试了很多方法后,我找到了解决方案。只需添加android:layerType="hardware"android:layerType="software"即可解决您的问题

<SeekBar android:id="@+id/seekBar"
    android:layout_width="100dp"
    android:layout_height="42dp"
    android:background="#20FFFFFF"
    android:rotation="270"
    android:layerType="hardware"
    android:layout_gravity="center"
    >
</SeekBar>