在 ListView 适配器中更改 getView(...) 中的 TextView 颜色和文本
Change TextView colour and text in getView(...) in ListView adapter
我已经搜索过了,我可以找到我需要的答案...
我有一个导航抽屉 ListView
,当我在列表中单击一个项目时,我希望能够从中获取 TextView
,并更改其背景颜色、文本颜色并使文本加粗。
我尝试通过执行以下操作获得 TextView
;
adapter_navList = new ArrayAdapter<String>(this, R.layout.listview_navdrawer, drawerItems) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
TextView item = (TextView) lv_navList.getItemAtPosition(i);
// Code to set the background, formatting, colour, etc.
return view;
}
};
lv_navList.setAdapter(adapter_navList);
但是,我不断收到以下错误:
java.lang.ClassCastException: java.lang.String cannot be cast to android.widget.TextView
我该如何解决这个问题?
您可以使用以下内容:
adapter_navList = new ArrayAdapter<String>(this, R.layout.listview_navdrawer, drawerItems) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
TextView mytextview=(TextView)view;
mytextview.setTextColor(Color.BLUE);
mytextview.setTextSize(14);
// Other code you may want to add
return view;
}
};
lv_navList.setAdapter(adapter_navList);
我已经搜索过了,我可以找到我需要的答案...
我有一个导航抽屉 ListView
,当我在列表中单击一个项目时,我希望能够从中获取 TextView
,并更改其背景颜色、文本颜色并使文本加粗。
我尝试通过执行以下操作获得 TextView
;
adapter_navList = new ArrayAdapter<String>(this, R.layout.listview_navdrawer, drawerItems) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
TextView item = (TextView) lv_navList.getItemAtPosition(i);
// Code to set the background, formatting, colour, etc.
return view;
}
};
lv_navList.setAdapter(adapter_navList);
但是,我不断收到以下错误:
java.lang.ClassCastException: java.lang.String cannot be cast to android.widget.TextView
我该如何解决这个问题?
您可以使用以下内容:
adapter_navList = new ArrayAdapter<String>(this, R.layout.listview_navdrawer, drawerItems) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
TextView mytextview=(TextView)view;
mytextview.setTextColor(Color.BLUE);
mytextview.setTextSize(14);
// Other code you may want to add
return view;
}
};
lv_navList.setAdapter(adapter_navList);