笔记15 | 归纳总结Android动态设置TextView的颜色的四种方法

前言

本节简要地来归纳总结Android动态设置TextView的颜色的四种方法

地址

http://blog.csdn.net/xiangyong_1521/article/details/51307590

目录

  • 主要代码
  • 链接

一. 代码示例

package com.txlong;    

import android.app.Activity;    
import android.graphics.Color;    
import android.os.Bundle;    
import android.widget.TextView;    

public class ListViewDemoActivity extends Activity {    
    // private ListView listView;    

    /** Called when the activity is first created. */    
    @Override    
    public void onCreate(Bundle savedInstanceState) {    
        super.onCreate(savedInstanceState);    

        TextView tv = new TextView(this);    
        tv.setText("Test set TextView's color.");    
        //方案一:通过ARGB值的方式    
        /**  
         * set the TextView color as the 0~255's ARGB,These component values  
         * should be [0..255], but there is no range check performed, so if they  
         * are out of range, the returned color is undefined  
         */    
        tv.setTextColor(Color.rgb(255, 255, 255));    
        /**  
         * set the TextView color as the #RRGGBB #AARRGGBB 'red', 'blue',  
         * 'green', 'black', 'white', 'gray', 'cyan', 'magenta', 'yellow',  
         * 'lightgray', 'darkgray'  
         */    
        tv.setTextColor(Color.parseColor("#FFFFFF"));    

      String StrColor = null;    
      StrColor = "FFFFFFFF";    
      int length = StrColor.length();    
      if (length == 6) {    
          tv.setTextColor(Color.rgb(    
                  Integer.valueOf(StrColor.substring(0, 2), 16),    
                  Integer.valueOf(StrColor.substring(2, 4), 16),    
                  Integer.valueOf(StrColor.substring(4, 6), 16)));    
      } else if (length == 8) {    
          tv.setTextColor(Color.argb(    
                  Integer.valueOf(StrColor.substring(0, 2), 16),    
                  Integer.valueOf(StrColor.substring(2, 4), 16),    
                  Integer.valueOf(StrColor.substring(4, 6), 16),    
                  Integer.valueOf(StrColor.substring(6, 8), 16)));    
      }    

        //方案二:通过资源引用    
      tv.setTextColor(getResources().getColor(R.color.my_color));    

        //方案三:通过资源文件写在String.xml中    
      Resources resource = (Resources) getBaseContext().getResources();    
      ColorStateList csl = (ColorStateList) resource.getColorStateList(R.color.my_color);    
      if (csl != null) {    
          tv.setTextColor(csl);    
      }    

        //方案四:通过xml文件,如/res/text_color.xml    
      XmlPullParser xrp = getResources().getXml(R.color.text_color);    
      try {    
          ColorStateList csl = ColorStateList.createFromXml(getResources(), xrp);    
          tv.setTextColor(csl);    
      } catch (Exception e) {    
      }    
         listView = new ListView(this);    

         Cursor cursor = getContentResolver().query(    
         Uri.parse("content://contacts/people"), null, null, null, null);    

         startManagingCursor(cursor);    

         ListAdapter listAdapter = new SimpleCursorAdapter(this,    
         android.R.layout.simple_expandable_list_item_2, cursor,    
         new String[] { "name", "name" }, new int[] {    
         android.R.id.text1, android.R.id.text2 });    

         listView.setAdapter(listAdapter);    
         setContentView(listView);   

        setContentView(tv);    
    }    
}

原文发布于微信公众号 - 项勇(xiangy_life)

原文发表时间:2017-10-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏项勇

笔记41 | Android加载器Adapter的几个练习

1203
来自专栏Android干货

安卓开发_浅谈ListView(自定义适配器)

2856
来自专栏向治洪

android RecycleView Adapter简单封装

早些时候我们使用系统提供个的BaseAdapter的时候为了满足大家的需要,我们总会对BaseAdapter做一层上层的封装,然后对于实际业务我们只需要关心ge...

2728
来自专栏along的开发之旅

<Android编程权威指南>之1.6 Activity.this和this的区别

也就是说,直接在监听器View.OnClickListener里使用this,代表的是创建的这个匿名类,也就是实现了View.OnClickListener接口...

683
来自专栏xingoo, 一个梦想做发明家的程序员

【插件开发】—— 6 SWT 复杂控件使用以及布局

前文回顾: 1 插件学习篇 2 简单的建立插件工程以及模型文件分析 3 利用扩展点,开发透视图 4 SWT编程须知 5 SWT简单控件的使用与布局搭...

2569
来自专栏Android开发指南

4.PopupWindow

2958
来自专栏Android开发指南

9.代码抽取(adapter)

2689
来自专栏Android知识点总结

3-VI--☆ListView的封装

1122
来自专栏非著名程序员

偷懒新姿势,打造属于RecyclerView的万能适配器Adapter和ViewHolder

前言 昨天开始接触江湖口碑很好的RecyclerView,事实上,我已经被她的强大所征服了!资源回收,数据绑定,布局显示,分割线,Item动画多个模块高度解耦...

2436
来自专栏Android干货

安卓开发_深入理解Activity和Fragment的关系

38913

扫码关注云+社区