您的位置:首页 > 产品设计 > UI/UE

Android UI学习之TextView

2015-07-17 21:31 459 查看
TextView用于非常的广泛,Textview里面不仅可以显示文字,还可以显示图片。 就我们日常生活中见到的文字都可以理解为TextView。

那下面就用几个例子来学习常见的TextView

例1: 实现网址,电话号码,Email的超链接

protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_textview);

textView1 = (TextView)findViewById(R.id.textView1);
textView2 = (TextView)findViewById(R.id.textView2);
textView3 = (TextView)findViewById(R.id.textView3);

//例子1: 显示电话, 网址, Email的超链接
String s1 = "我的电话: 18903665845\n";
s1 += "我的网站:www.hao345.com\n";
s1 += "我的Email: hao@345.com";

textView1.setText(s1);
}

模拟器显示如下:



注意: 要想让电话, 网址,以及Email出现超链接, 该TextView必须有如下属性:

android:autoLink="all" 我选择的是all, 也就是所有的都会出现超链接

例子2:  一行文字中就某2个特殊颜色的字,实现超链接

//例子2: 实现某特殊字实现超链接
String s2 = "我是雷锋,请点我!";
//实现一个字符串拆分器
SpannableString string = new SpannableString(s2);

/*参数说明: 第一个:被拆分的字到底要干啥
第二个:从哪里开始
第三个:从哪里结束
第四个:拆分的方式,是包含前后,还是包含等
*/
string.setSpan(new ClickableSpan() {

@Override
public void onClick(View widget) {
Toast.makeText(TextViewActivity.this, "不用谢!", Toast.LENGTH_SHORT).show();

}
}, 5, 8, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

textView2.setText(string);
//设置事件的方式
textView2.setMovementMethod(LinkMovementMethod.getInstance());

模拟器运行效果:



例子三: 实现一串文字的滚动效果

//例子3: 实现一串文字滚动
String s3 = "Android是一种以Linux与JAVA为基础的开放源代码操作系统,主要使用于便携设备。中国大陆地区较多人使用“安卓”。Android操作系统最初由Andy Rubin开发,被谷歌收购后则由Google公司和开放手机联盟领导及开发,主要支持手机与平板";
textView3.setText(s3);

模拟器效果:



注意: 要实现跑马灯类似的效果,必须给该TextView设置相应的属性:

android:singleLine="true" 单行显示
android:ellipsize="marquee" 如何显示单行显示不下,用循环滚动的方式呈现
android:marqueeRepeatLimit="marquee_forever" 循环次数是无限循环
android:focusable="true" 必须要设置
android:focusableInTouchMode="true" 必须要设置

好的, 今天的课程就到这里。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  TextView例子