2016-12-22 71 views
3

我正在开发一个android应用程序,并且在一个片段中,我已经有一个listview并有一组项目将通过arrayadapter添加到此listview。但是,我被要求根据原始数据库中的特定属性为某些列表项添加动态颜色,特别是只粗体显示那些元素。有没有什么办法可以用arrayAdapter类来实现,或者如果没有,考虑到这是一个简单的用例,我该怎么做才能实现这个ListView单个项目样式

+0

您可以检查的造型特别的准则中提及。 – Sandeep

回答

1

你可以通过你的ArrayAdapter类来实现, 只是把你的条件在适配器getView方法,并设置文本视图是一个大胆的

if(conditionPart){ 
    textView.setTypeface(null, Typeface.BOLD); // For bold 
    textView.setBackgroundColor(context.getResources().getColor(R.color.Black)); // For Black Color Background 
}else{ 
    textView.setTypeface(null, Typeface.NORMAL);// For Noral 
    textView.setBackgroundColor(context.getResources().getColor(R.color.Gray)); // For Gray Color Background 
} 
0

您可以创建custom Adapter哪里,只要你想在这里你可以风格你的文字是样本定制适配器: Custom Adapter for List View

1

这很容易处理这个问题,你只需要放在适配器中的一个条件,如果这种情况是真的,你只需要定制你的项目,因为它是从你那里问。

if(condition) 
    { 
     view.setBackgroundColor(activity.getResources().getColor(R.color.White)); 

    } 

如果你想以编程方式设置一个TextView大胆在适配器检查您的条件,并设置它象下面这样:

textView.setTypeface(null, Typeface.BOLD); 
相关问题