Android 不确定的进度条有奇怪的线条
Android indeterminate progressbar has strange lines
我实现了一个不确定的进度条,就像他们在这里示例的那样:
http://www.zoftino.com/android-progressbar-and-custom-progressbar-examples
我用这段代码设置了样式:
styles.xml
<style name="MyProgressBarSpinner" parent="@style/Widget.AppCompat.ProgressBar">
<item name="android:indeterminateDrawable">@drawable/progressspinner</item>
<item name="android:minHeight">80dp</item>
<item name="android:minWidth">200dp</item>
</style>
progressspinner.xml
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/progress"
android:top="16dp"
android:bottom="16dp">
<layer-list>
<item>
<rotate
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="360">
<shape android:shape="ring"
android:innerRadiusRatio="2.3"
android:thickness="3.8sp"
android:useLevel="true">
<solid
android:width="1dp"
android:color="#79bac6" />
</shape>
</rotate>
</item>
<item>
<rotate
android:fromDegrees="90"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="180">
<shape android:shape="ring"
android:innerRadiusRatio="2.3"
android:thickness="3.8sp"
android:useLevel="true">
<solid
android:width="1dp"
android:color="#7985c6" />
</shape>
</rotate>
</item>
<item>
<rotate
android:fromDegrees="360"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="0">
<bitmap android:src="@drawable/picture">
</bitmap>
</rotate>
</item>
</layer-list>
</item>
</layer-list>
现在的问题是,我的进度条中的两个圆环出现了奇怪的线条,我不知道如何防止这种情况发生。您可以在这张图片上看到它:
感谢您的建议。
从微调器中删除以下两行代码 xml。
android:top="16dp"
android:bottom="16dp"
这是在您遇到问题的进度条内添加额外的行。
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/progress">
<layer-list>
<item>
<rotate
android:fromDegrees="0"
android:toDegrees="360">
<shape
android:innerRadiusRatio="2.3"
android:shape="ring"
android:thickness="3.8sp"
android:useLevel="true">
<solid
android:width="1dp"
android:color="#79bac6"/>
</shape>
</rotate>
</item>
<item>
<rotate
android:fromDegrees="90"
android:toDegrees="180">
<shape
android:innerRadiusRatio="2.3"
android:shape="ring"
android:thickness="3.8sp"
android:useLevel="true">
<solid
android:width="1dp"
android:color="#7985c6"/>
</shape>
</rotate>
</item>
<item
android:width="60dp"
android:height="60dp"
android:gravity="center"
>
<rotate
android:fromDegrees="360"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="0">
<bitmap android:src="@drawable/ic_launcher">
</bitmap>
</rotate>
</item>
</layer-list>
</item>
</layer-list>
如何让我的图片变小?
为此,您必须使用具有重力的项目宽度和高度参数。
示例:
<item
android:width="60dp"
android:height="60dp"
android:gravity="center">
我实现了一个不确定的进度条,就像他们在这里示例的那样: http://www.zoftino.com/android-progressbar-and-custom-progressbar-examples
我用这段代码设置了样式:
styles.xml
<style name="MyProgressBarSpinner" parent="@style/Widget.AppCompat.ProgressBar">
<item name="android:indeterminateDrawable">@drawable/progressspinner</item>
<item name="android:minHeight">80dp</item>
<item name="android:minWidth">200dp</item>
</style>
progressspinner.xml
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/progress"
android:top="16dp"
android:bottom="16dp">
<layer-list>
<item>
<rotate
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="360">
<shape android:shape="ring"
android:innerRadiusRatio="2.3"
android:thickness="3.8sp"
android:useLevel="true">
<solid
android:width="1dp"
android:color="#79bac6" />
</shape>
</rotate>
</item>
<item>
<rotate
android:fromDegrees="90"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="180">
<shape android:shape="ring"
android:innerRadiusRatio="2.3"
android:thickness="3.8sp"
android:useLevel="true">
<solid
android:width="1dp"
android:color="#7985c6" />
</shape>
</rotate>
</item>
<item>
<rotate
android:fromDegrees="360"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="0">
<bitmap android:src="@drawable/picture">
</bitmap>
</rotate>
</item>
</layer-list>
</item>
</layer-list>
现在的问题是,我的进度条中的两个圆环出现了奇怪的线条,我不知道如何防止这种情况发生。您可以在这张图片上看到它:
感谢您的建议。
从微调器中删除以下两行代码 xml。
android:top="16dp"
android:bottom="16dp"
这是在您遇到问题的进度条内添加额外的行。
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/progress">
<layer-list>
<item>
<rotate
android:fromDegrees="0"
android:toDegrees="360">
<shape
android:innerRadiusRatio="2.3"
android:shape="ring"
android:thickness="3.8sp"
android:useLevel="true">
<solid
android:width="1dp"
android:color="#79bac6"/>
</shape>
</rotate>
</item>
<item>
<rotate
android:fromDegrees="90"
android:toDegrees="180">
<shape
android:innerRadiusRatio="2.3"
android:shape="ring"
android:thickness="3.8sp"
android:useLevel="true">
<solid
android:width="1dp"
android:color="#7985c6"/>
</shape>
</rotate>
</item>
<item
android:width="60dp"
android:height="60dp"
android:gravity="center"
>
<rotate
android:fromDegrees="360"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="0">
<bitmap android:src="@drawable/ic_launcher">
</bitmap>
</rotate>
</item>
</layer-list>
</item>
</layer-list>
如何让我的图片变小?
为此,您必须使用具有重力的项目宽度和高度参数。
示例:
<item
android:width="60dp"
android:height="60dp"
android:gravity="center">