Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to change appearance of ListView?

I have three main things I want to change with the appearance of a ListView. 1) get rid of horizontal dividers that print between items 2) change font size of test displayed in listview 3) change the padding around each item displayed

It looks like after reading for a while that 2) and 3) should be controlled by changing these properties for the TextView used by the ListView, but I don't yet understand how to do that. Can someone answer these with a little more detail?

like image 986
corbin Avatar asked Nov 21 '25 20:11

corbin


1 Answers

1) Set divider height to 0 --- setDividerHeight(0) and set divider color to transparent --- setDivider(new ColorDrawable(0x00FFFFFF))

2) If you're using a list of text views then you can continue using a simple adapter like ArrayAdapter but you will need to create a custom text view. You can add something like this to res/layout test_text.xml

<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize=<SIZE IN SP>
android:textColor="#FFF" />

3) Add padding to your textview above

<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/text"
android:padding="5dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize=<SIZE IN SP>
android:textColor="#FFF" />

Use your new layout with your ArrayAdapter

eg.
ArrayAdapter(Context context, int resource, int textViewResourceId, List<T> objects)

ArrayAdapter<String> myAdapter = new ArrayAdapter<String>(this, R.layout.test_text, R.id.text, myData);
like image 120
jagsaund Avatar answered Nov 23 '25 10:11

jagsaund



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!