我正在尝试在垂直 LinearLayout 中的条目之间添加分隔线,以模拟 ListView 的外观。(在这种特殊情况下,我不能只使用 ListView。)
这就是我在 list_divider.xml 中的内容:
<?xml version="1.0" encoding="utf-8"?>
<View
xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@color/panel_border"
android:layout_width="fill_parent"
android:layout_height="@dimen/border_width"
/>
这是尝试在除列表中的第一个元素之外的每个元素之前膨胀此分隔符的代码:
LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
for (int i = 0; i < categories.size(); i++ ) {
if (i > 0)
items.addView(vi.inflate(R.layout.list_divider, null));
// these dividers never appear
// but these main entries always appear just fine
items.addView(ad.getView(i, null, null));
}
主列表项显示正确,但分隔线不可见。
如果我将它们更改为 TextView 而不是普通视图,则会出现分隔线:
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@color/panel_border"
android:layout_width="fill_parent"
android:layout_height="@dimen/border_width"
android:text="---"
/>
我尝试为宽度和高度设置显式像素值,以及使用border_width 定义和fill_parent 选项。没有什么不同的。
一个普通的旧视图有什么特别之处使它不会出现吗?