ListView switch not showing

ListActivity uses the BaseAdapter extension and the following layout:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:background="@color/application_background_color"> <ListView android:id="@android:id/list" android:layout_width="fill_parent" android:layout_height="fill_parent" android:drawSelectorOnTop="false" android:divider="@drawable/divider" android:dividerHeight="2dip" android:clickable="true" android:choiceMode="singleChoice" android:cacheColorHint="@color/application_background_color"> </ListView> </LinearLayout> 

It inflates the following layout for strings:

  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:id="@+id/Row" android:layout_width="fill_parent" android:layout_height="50dip" android:textSize="20dip" android:textColor="#000000" android:layout_margin="8dip" android:gravity="center_vertical"></TextView> </LinearLayout> 

The selectable / divider.xml looks like this at the moment, but I tried all different kinds:

  <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="line"> <stroke android:color="#FF000000"> </stroke> </shape> 

If I read popped from the image, it works. Why doesn't this work when I define drawable as an .xml file?

Update :
The code follows the same pattern as the EfficientAdapter in the Android developer examples:
http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List14.html

+6
source share
2 answers

The code below works for me:

list of layouts:

 <ListView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/list" android:cacheColorHint="@android:color/transparent" android:background="@android:color/transparent" android:textFilterEnabled="false" style="@style/ListDivider" android:layout_width="wrap_content" android:layout_height="wrap_content"> </ListView> 

styles.xml

 <resources> <style name="ListDivider"> <item name="android:divider">@drawable/my_shape</item> <item name="android:dividerHeight">5dp</item> </style> </resources> 

my_shape:

  <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <padding android:top="2dp" android:left="2dp" android:right="2dp" android:bottom="2dp" /> <corners android:radius="5dp" /> <solid android:color="@android:color/white" /> </shape> 
+2
source

Here is my workaround for a broken delimiter:

 <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:top="1dip"> <shape android:shape="rectangle" > <solid android:color="#FF123243" /> <stroke android:dashGap="5dp" android:dashWidth="8dp" android:width="1dp" android:color="#FFFFFFFF" /> </shape> </item> <item> <shape android:shape="rectangle" > <solid android:color="#FF000000" /> </shape> </item> </layer-list> 

Just make sure to β€œsynchronize” the color of the second shape with the list and list heights.

0
source

Source: https://habr.com/ru/post/893070/


All Articles