Changing a divider with setDivider in a ListActivity without a custom ListView? Changing a divider with setDivider in a ListActivity without a custom ListView? android android

Changing a divider with setDivider in a ListActivity without a custom ListView?


I figured it out. The issue had nothing to do with the ListActivity generating a ListView for me. It was in how I was defining the divider in Java code.

There are two ways that I see to define the divider (border between ListView rows) on a ListView that is automatically inflated from a ListActivity, if you want to define the color in XML:

Method 1:

In res/values/colors.xml, put the following:

<resources> <color name="sage">#cceebb</color></resources>

In your ListActivity-extending class, do this:

ListView lv = getListView();ColorDrawable sage = new ColorDrawable(this.getResources().getColor(R.color.sage));lv.setDivider(sage);lv.setDividerHeight(1);

Method 2:

In res/values/colors.xml:

<resources> <drawable name="sage">#cceebb</drawable></resources>

And in your class that extends ListActivity:

ListView lv = getListView();ColorDrawable sage = new ColorDrawable(this.getResources().getColor(R.drawable.sage));lv.setDivider(sage);lv.setDividerHeight(1);


To set divider in listview programatically:

These code put inside in your .java Class

   ListView lv = (ListView) findViewById(R.id.lv);   lv.setDivider(getResources().getDrawable(R.drawable.drawable_divider));   lv.setDividerHeight(1);

Creating Drawable: {res > drawable > drawable_divider.xml}

<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android"    android:shape="rectangle">    <solid android:color="#ececec"></solid></shape>


Try this code:

searchText.setBackgroundColor(getResources().getColor(R.color.wordColorBlack));ListView lv = getListView();lv.setDivider(getResources().getDrawable(R.drawable.divider2));lv.setDividerHeight(2);