Android ListFragment缺少分隔符
我正在修改我现有的应用程序以使用ListFragment而不是ListView 我无法使用JAVA设置除法器。没有抛出异常。ListFragment显示时不带分隔符Android ListFragment缺少分隔符,android,android-listview,android-listfragment,Android,Android Listview,Android Listfragment,我正在修改我现有的应用程序以使用ListFragment而不是ListView 我无法使用JAVA设置除法器。没有抛出异常。ListFragment显示时不带分隔符 public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); setRetainInstance(true); setHasOpt
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
setRetainInstance(true);
setHasOptionsMenu(true);
lv = getListView();
lv.setTextFilterEnabled(true);
lv.setCacheColorHint(Color.TRANSPARENT);
lv.setFastScrollEnabled(true);
lv.setDividerHeight(1);
lv.setDivider(getActivity().getResources().getDrawable(android.R.color.black));
lv.setBackgroundDrawable(getResources().getDrawable(R.drawable.merge)); //white background
lv.setScrollingCacheEnabled(false);
lv.setSmoothScrollbarEnabled(false);
setListAdapter(new IconicAdapter());
}
我做错了什么?非常感谢您的帮助。您的分隔线不能只是一种颜色,因为它还需要一个宽度。您正在检索可绘制的,但实际上正在获取颜色。您应该创建一个可绘制的线条,并将其放在可绘制文件夹中,该文件夹的定义如下:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="line">
<stroke android:color="#000000" android:width="1dp" />
</shape>
</item>
</selector>
应该在lv.setDivider(getActivity().getResources().getDrawable(android.R.color.black))之后使用lv.setDividerHeight(1) 因此,将它们倒置:
lv.setDivider(getActivity().getResources().getDrawable(android.R.color.black));
lv.setDividerHeight(1);