Android 在ListView中设置特定项的样式
如何在Android 在ListView中设置特定项的样式,android,listview,Android,Listview,如何在列表视图中设置特定项目的样式?比如说 如果(列表视图中的文本.equals(“ABC”)),则ABC应为粗体,大小为16sp等。我从字符串数组创建此列表视图 这是我的密码: public class IngSearch extends AppCompatActivity implements AdapterView.OnItemClickListener, AbsListView.MultiChoiceModeListener { ListView lv; String
列表视图中设置特定项目的样式?比如说
如果(列表视图中的文本.equals(“ABC”))
,则ABC应为粗体,大小为16sp
等。我从字符串数组创建此列表视图
这是我的密码:
public class IngSearch extends AppCompatActivity implements AdapterView.OnItemClickListener, AbsListView.MultiChoiceModeListener {
ListView lv;
String list[] = {"123", "QAZ", ""edc", "ABC"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ing_search);
lv = (ListView) findViewById(R.id.list1);
lv.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, list));
公共类InSearch扩展AppCompativeActivity实现AdapterView.OnItemClickListener、AblistView.MultichoiceModelListener{
ListView lv;
字符串列表[]={“123”、“QAZ”、“edc”、“ABC”};
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u ing\u search);
lv=(ListView)findViewById(R.id.list1);
lv.setAdapter(新的ArrayAdapter(这个,android.R.layout.simple_list_item_1,list));
在这个列表中,我想把这样的风格应用到ABC
<style name="abcStyle">
<item name = "android:textSize">24sp</item>
<item name="android:textColor">#000</item>
</style>
24便士
#000
谢谢我认为这是解决方案
首先,您需要自定义listview适配器
,然后在getView(…)
中为每个特定的文本视图设置样式
public class ListViewAdapter extends BaseAdapter {
@Override
public int getCount() {
...
}
@Override
public codeLearnChapter getItem(int arg0) {
...
}
@Override
public long getItemId(int arg0) {
...
}
@Override
public View getView(int arg0, View arg1, ViewGroup arg2) {
...
TextView textViewTitle = (TextView) findViewById(R.id.text_view_title);
if(your condition){
textViewTitle.setTextAppearance(this, R.style.abcStyle); // change your textview style here
}else if(...){
textViewTitle.setTextAppearance(// another style );
}else{
textViewTitle.setTextAppearance(// another style );
}
}
}
希望这有帮助这是一个教程,你可以按照它来实现这一点,因为网站并没有真正回答我的问题