我有一个
ListView,我从一个自定义
ListAdapter填充.在适配器(在
getView(int,View,ViewGroup)方法)内,我使用
setBackgroundColor(int)设置
View的背景颜色.问题是,无论什么颜色,我设置背景总是出来一个深灰色.也许值得注意的是我正在使用Light主题.
代码的相关(简化)位:
AndroidManifest.xml中:
<activity android:name=".MyActivity" android:theme="@android:style/Theme.Light" />
MyAdapter.java:
@Override public View getView(int position,View convertView,ViewGroup parent) { LayoutInflater inflater = LayoutInflater.from(mContext); View av = inflater.inflate(R.layout.my_row,parent,false); av.setBackgroundColor(R.color.myRow_red); mName = (TextView) av.findViewById(R.id.myRow_name); mName.setText("This is a name"); return av; }
任何想法/建议?
解决方法
你应该使用: setBackgroundResource(R.color.myRow_red) 而不是setBackgroundColor().在您的示例中,背景颜色分配了ID,而不是资源中描述的实际颜色.