Android无法为文本视图设置颜色

时间:2017-03-02 08:03:38

标签: textview

专家,

我无法将颜色设置为文本视图。内容类似于下面的

Mobile content example

st的值来自数据库。值可以在0到1之间。 当用户登录应用程序然后他将向客户显示高级别相关状态,然后当他进一步单击时,将显示该任务的更详细状态。

根据要求,我提供了完整的代码。

private void prepareListData() {
    listDataHeader = new ArrayList<String>();
    listDataChild = new HashMap<String, List<String>>();

    // Adding child data
    listDataHeader.add("Report:");
    listDataHeader.add("User Details");
    listDataHeader.add("Property Details");
    listDataHeader.add("Owner's Details");
    listDataHeader.add("Tenant's Details");
    listDataHeader.add("Appointment's Details");
    listDataHeader.add("Status's Details:");

    // Adding child data
    List<String> report = new ArrayList<String>();
    report.add(rkey1);

    List<String> user = new ArrayList<String>();
    user.add(name1);
    user.add(mail1);
    user.add(contact1);

    List<String> property = new ArrayList<String>();
    property.add(padd1);

    List<String> owner = new ArrayList<String>();
    owner.add(oname1);
    if (!ocontact.equals("") || !ocontact.equals("")) {
        owner.add(ocontact1);
    }
    owner.add(oadd1);
    owner.add(omail1);

    List<String> tenant = new ArrayList<String>();
    tenant.add(tname1);
    tenant.add(tcontact1);
    tenant.add(tadd1);
    tenant.add(tmail1);

    List<String> appointment = new ArrayList<String>();
    appointment.add(appadd1);
    appointment.add(sdatenew);
    appointment.add(stimenew);

    List<String> status = new ArrayList<>();
    for(int i=0;i<12;i++)
  {
      status.add(status_names1[i]);
      TextView txtListChild = (TextView) 
      ((Activity)context).findViewById(R.id.lblListItem);
      txtListChild.setTextColor(Color.GREEN);

   }

    listDataChild.put(listDataHeader.get(0), report); // Header, Child data
    listDataChild.put(listDataHeader.get(1), user);
    listDataChild.put(listDataHeader.get(2), property);
    listDataChild.put(listDataHeader.get(3), owner);
    listDataChild.put(listDataHeader.get(4), tenant);
    listDataChild.put(listDataHeader.get(5), appointment);
    listDataChild.put(listDataHeader.get(6), status);

}

1 个答案:

答案 0 :(得分:0)

尝试在onCreate()中定义TextView:

public class myActivity extends Activity(){

    TextView txtListChild;

    @Override
    public void onCreate(Bundle savedInstanceState) {

       txtListChild = (TextView)findViewById(R.id.lblListItem);

     }

   private void prepareListData() {

     for(int i=0;i<12;i++){
        status.add(status_names1[i]);
        txtListChild.setTextColor(Color.GREEN);

     }

   }
}

您可以尝试的另一件事是在R中定义颜色然后:

txtListChild.setTextColor(getResources().getColor(R.color.YOURGREENCOLOR));