博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

001、关于TextView的一些小知识

Posted on 2013-09-16 16:10  mz_zyh  阅读(376)  评论(0编辑  收藏  举报
1、TextView属性:
  在Xml文件里面,给TextView控件添加android:autoLink="all",那么在TextView内容中如果有http://,则可以显示出来,点击会打开浏览器访问该网址。
  
2、虽然在values/strings.xml里定义了默认的字符串常数,但若遭遇如“?”、“'”、“\”等符号时,必须使用转义字符
 
3、关于Drawable颜色常数及后台色的引用
  在res/valuse下建立color.xml文件,文件内可以定义颜色作为引用,
 
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <drawable name="white">#FFFFFFFF</drawable>
</resources> 

  

4、关于Style样式的定义

  可以在valuse目录下建立styles.xml文件定义样式
  
  可以在布局文件里面直接引用该样式
 
5、引用外部资源assets,通过Typeface类的createFromAsset方法,让后TextView可以通过setTypeface来引用外部的字体文件
((TextView) findViewById(R.id.tv)).setTypeface(Typeface
                        .createFromAsset(TypefaceActivity.this.getAssets(),
                                "fonts/HandmadeTypewriter.ttf"));

 

 

  将外部字体文件放在fonts/的底下,就可以通过AssetsManager来引用外部资源。此处特别需要注意的是,字体文件必须是符合Ture Type Font 格式。否则,即便程序编译时不出错,在运行时也会发生无法更改字体的情况。

  上述代码使用了Typeface类,并使用外部字体文件来改变文字的字体。目前Android在使用了不支持的字体,Android也不会发出错误信息,而是以Droid Sans默认字体替换,所以当遇到使用外部字体却发现字体没有变化时,原因就出现在Android没有支持这个字体,而非程序本身发生错误。
  除了通过外部资源来构造Typeface外,也可以通过defaultFromStyle来使用Android内置的几款Typeface。
    private Typeface[] typefaces = { Typeface.defaultFromStyle(Typeface.BOLD),
            Typeface.defaultFromStyle(Typeface.BOLD_ITALIC),
            Typeface.defaultFromStyle(Typeface.ITALIC),
            Typeface.defaultFromStyle(Typeface.NORMAL), Typeface.DEFAULT,
            Typeface.DEFAULT_BOLD, Typeface.MONOSPACE, Typeface.SANS_SERIF,
            Typeface.SERIF, Typeface.defaultFromStyle(Typeface.NORMAL) };