我正在使用 newView 和 bindView 创建 listfragment 的元素。该列表构建良好。列表的每一行都有一个分隔符。
我猜这些分隔符之间的颜色是默认选择的 android 主题。我尝试在 onCreateView() 中使用此代码将此颜色设置为白色。
getListView().setBackgroundColor(Color.WHITE);
但它提示内容 View 尚未创建。
最佳答案
在调用 onCreateView(
) 之前,Fragment 不会有其内容 View ...
所以 onCreateView()
中的 getListView()
返回 null
并将 onCreateView()
中的代码移动到 onViewCreated()
...
通常你不需要覆盖 ListFragment
中的 onCrateView()
方法,因为它会为你覆盖并实例化 ListView
作为它的内容
下面的代码假定您正在扩展 ListFragment
...
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
ListView listView = getListView();
listView.setDivider(new ColorDrawable(Color.WHITE));
listView.setDividerHeight(3); // 3 pixels height
}
关于安卓 : Set background color for listfragment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20903150/