我想樣式默認的ListView列表divider有雙方的空白邊緣。我已經嘗試設置整個ListView的邊距,但沒有創建所需的結果。自定義樣式listdivider
我有:
什麼,我試圖讓(注意在分隔的兩側邊緣):
什麼是最好的這樣做的方式?提前致謝!
我想樣式默認的ListView列表divider有雙方的空白邊緣。我已經嘗試設置整個ListView的邊距,但沒有創建所需的結果。自定義樣式listdivider
我有:
什麼,我試圖讓(注意在分隔的兩側邊緣):
什麼是最好的這樣做的方式?提前致謝!
我終於能夠解決我的問題使用接受的答案this後(沒有梯度部分)
我會建議創建自己的ListAdapter
並將其設置爲您的ListView
。然後在其getView
方法中,您可以以任何您想要的方式設置單個列表項的樣式。
使用<include layout="@layout/divider" />
和線路的自定義佈局。像這樣:
main.xml中:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ListView android:id="@+id/listview"
android:layout_width="wrap_content"
android:divider="@layout/divider"
android:dividerHeight="3sp"
android:layout_height="wrap_content" />
</LinearLayout>
divider.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<gradient
android:startColor="#00000000"
android:centerColor="#FFFFFF"
android:endColor="#00000000"
/>
<corners
android:radius="4dp"
/>
</shape>
AndroidlistviewdividerActivity.class
public class AndroidlistviewdividerActivity extends Activity {
/** Called when the activity is first created. */
private ListView lv;
private String listview_array[] = { "ONE", "TWO", "THREE", "FOUR", "FIVE", "SIX",
"SEVEN", "EIGHT", "NINE", "TEN" };
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
lv = (ListView) findViewById(R.id.listview);
lv.setAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, listview_array));
lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(new OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
AlertDialog.Builder adb = new AlertDialog.Builder(
AndroidlistviewdividerActivity.this);
adb.setTitle("ListView OnClick");
adb.setMessage("Selected Item is = "
+ lv.getItemAtPosition(arg2));
adb.setPositiveButton("Ok", null);
adb.show();
}
});
}
}
謝謝,這幾乎是我在找的東西。但是,如果我設置ListView divider到@ layout/divider,應用程序崩潰。有什麼建議麼? 我得到以下錯誤: 造成的:org.xmlpull.v1.XmlPullParserException:二進制XML文件行#2:無效的繪製標籤查看 – Meatje 2012-03-08 17:04:23
@Meatje:有你的解決方案或不? – 2012-03-08 17:30:21
@Meatje:好的,我正在更新我的解決方案,這完全是我的工作.. – 2012-03-08 17:32:40
http://stackoverflow.com/questions/3979218/android-listview-divider看到這個自定義分頻器,並作出一些努力... – 2012-03-08 16:01:14