我为Switch的拇指和音轨开发了一个自定义绘图,但问题是它出现了拉伸状态:
有没有人知道造成这种情况的原因是什么? 我的XML如下:
Layout.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:layout_toLeftOf="@+id/switch1"
android:padding="5dp" />
<Switch
android:id="@+id/switch1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginRight="10dp"
android:thumb="@drawable/switch_thumb_selector"
android:track="@drawable/switch_track_selector" />
<TextView
android:id="@+id/switchErrorView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentStart="true"
android:layout_below="@id/switch1"
android:layout_centerHorizontal="true"
android:text=""
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@android:color/holo_red_light"
android:visibility="gone" />
</RelativeLayout>
switch_thumb_selector.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/switch_thumb_inactive" android:state_pressed="true"/>
<item android:drawable="@drawable/switch_thumb_inactive" android:state_checked="true"/>
<item android:drawable="@drawable/switch_thumb_inactive"/>
</selector>
switch_track_selector.xml
<item android:drawable="@drawable/switch_track_green" android:state_checked="true"/>
<item android:drawable="@drawable/switch_track_white" android:state_checked="false"/>
<item android:drawable="@drawable/switch_track_white"/>
Green Track Drawable:
答案 0 :(得分:1)
我认为这种不良行为已经出现,因为你没有画出“内容”区域。尝试这个drawable,我已经测试过,它对我有用。