這是一段時間我堅持這個問題。可能有些人可以幫忙。圓形進度條大小對齊
問題是我的android圓形進度條的背景根據手機屏幕大小有不同的大小。
屏幕快照應該說明問題。
藍不完整的圓是圓形進度條(動畫)。它應該實際上運行在白色圓圈之上。它只適用於特定的屏幕尺寸。
將白色圓圈設置爲進度條的背景可繪製。
以下是代碼。 (我已經把需要的只是代碼)
acivity_countdown.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:orientation="vertical"
android:background="#FD4C0D"
>
<FrameLayout
android:id="@+id/CountDownProress"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="#FD4C0D"
>
<ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:indeterminate="false"
android:progressDrawable="@drawable/circular_progress_bar"
android:layout_alignParentBottom="true"
android:background="@drawable/circular_shape"
android:layout_centerHorizontal="true"
android:max="500"
android:progress="0"
></ProgressBar>
<LinearLayout.../><!--this layout contains text inside circular progress -->
</FrameLayout>
<FrameLayout.../><!--this layout contains button under circular progress -->
</LinearLayout>
circular_progress_bar.xml
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
android:toDegrees="0">
<shape
android:innerRadiusRatio="2.5"
android:shape="ring"
android:thickness="3dp"
android:useLevel="true">
<gradient
android:angle="0"
android:endColor="#005B7F"
android:startColor="#005B7F"
android:type="sweep"
android:useLevel="false">
</gradient>
</shape>
</rotate>
circular_shape.xml(背景繪製)
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:useLevel="false"
android:innerRadius="145dp"
android:shape="ring"
android:thickness="0.8dp"
>
<solid android:color = "#ffffff"/>
</shape>
我試圖根據這個https://stackoverflow.com/a/9362168/3929188根據屏幕大小縮放circular_shape.xml(進度條的背景)。但是從drawable創建一個位圖xml對我來說是一個挑戰,我根本無法做到這一點(noobie developer)。
我試圖爲circular_progress_bar.xml放置背景,以便藍色圓圈動畫位於白色圓圈之上,但失敗。
歡迎任何想法!
不!實際上旋轉動畫是由代碼控制的。我認爲它與縮放背景圖像無關。 –
你有沒有試過這個。 view.setScaleType(ScaleType.FIT_XY); – lanniaoyidingying
我需要更多解釋。我的問題是如何縮放可繪製背景。如何在代碼中將背景可繪製(在這種情況下爲circular_shape.xml)作爲視圖對象進行縮放?我是一個noobie。如果我有問題,請原諒。 –