我使用這個devadvance\circularSeekBar 創建了一個半圓形進度條,當我從調色板中選擇該自定義視圖時,它看起來像這樣。半圓形進度條Android - 繪製半圓
。
在這我有兩個相對佈局與權重。包含進度條的佈局的權重爲2,最下面的權重爲3.並且將進度條的佈局寬度和高度設置爲包裝內容。
所以我的問題是爲什麼進度條看起來像這樣從調色板中選擇時?畫布大小是否需要完美的正方形?我想要的是半圓形進度條被這樣的佈局完全包圍。
在此任何光理解。
編輯 XML代碼
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main_parent_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:fitsSystemWindows="true">
<include layout="@layout/toolbar"/>
<android.support.v4.widget.DrawerLayout
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="3">
<LinearLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<RelativeLayout xmlns:app = "http://schemas.android.com/apk/res-auto"
android:id ="@+id/calorie_frame"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="2"
android:clickable="true">
<com.devadvance.circularseekbar.CircularSeekBar
android:id="@+id/calorie_progressbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:start_angle = "180"
app:end_angle = "0"
app:progress = "25"
app:circle_x_radius="200"
app:circle_y_radius="200"
app:circle_stroke_width = "30"
app:use_custom_radii="true"
app:circle_color ="#FFFACD"
android:layout_alignParentEnd="false"
android:layout_alignParentStart="false"
android:layout_centerInParent="true" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/exercise_frame"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="3"
android:clickable="true">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/calorie_label"
android:id="@+id/textView"
android:layout_marginBottom="40dp"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_marginRight="20dp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView"
android:layout_alignBottom="@+id/textView"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="50dp"
android:layout_marginStart="50dp"
android:contentDescription="@string/exercise_image" />
</RelativeLayout>
</LinearLayout>
<ListView
android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
android:background="#999"/>
</android.support.v4.widget.DrawerLayout>
</LinearLayout>
後ur xml代碼.. –
它看起來像你交換的權重分配(頂部= 3,底部= 2)。也許你忘了分配'android:layout_height =「0dp」',這是權重的工作方式。還要確保根容器是一個LinearLayout(如果它是一個RelativeLayout,你可以忘記權重)。 –
@DerGolem根容器是一個LinearLayout。我用'android:layout_height =「match_parent」' @MSGadag編輯。 – Sndn