博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[置顶] Android玄铁剑之TextView之传送门
阅读量:4612 次
发布时间:2019-06-09

本文共 3549 字,大约阅读时间需要 11 分钟。

 

 

 

玄铁剑

        金庸武侠第一神剑!剑魔独孤求败四十岁前持之横行天下,后为神雕侠杨过所得,持之亦无敌于天下。神雕侠隐退前将此剑赠与小东邪郭襄。襄阳城破前,郭靖、黄蓉夫妇请高明工匠熔之铸成倚天剑、屠龙刀二神兵,并藏《九阴真经》、《降龙十八掌掌谱》与《武穆遗书》于其中。此剑剑身长愈三尺,两边剑锋均为钝口,剑尖圆圆似是半球,通体深黑,却隐隐透出红光。剑以玄铁制成,共重八八六十四斤。玄铁乃天下至宝,便是要得一两也是绝难,寻常刀枪剑戟之中,只要加入半两数钱,凡铁立成利器。“重剑无锋,大巧不工”,其中境界,远胜世上诸般最巧妙的剑招。越是平平无奇的剑招,对方越难抗御。如挺剑直刺,只要劲力强猛,威力远比变幻奇妙的剑招更大。

        本节我们学习如何利用Android平台“玄铁剑”TextView导航到一个Activity,下面给出该情景的案例:

一、案例技术要点

1.android.text.SpannableString:提供一个总体文本是不可变的,但是支持局部对象(它所标记的)可以附加或分离。

2.SpannableString类setSpan(...):设置链接地址、链接显示内容和附加内容应用效果。

3.Spanned.SPAN_EXCLUSIVE_EXCLUSIVE:表示在当前文本前端和后端新增字符均不采用当前显示效果。

4.android.text.method.LinkMovementMethod:提供超链接功能。TextView需要此功能时引入该类的实例即可。

二、案例代码陈列

AndroidManifest.xml

strings.xml

Textview单击链接弹出Activity

main.xml

TextViewMainActivity.java

package com.android.textview;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.text.SpannableString;import android.text.Spanned;import android.text.method.LinkMovementMethod;import android.text.style.ClickableSpan;import android.view.View;import android.widget.TextView;/** * TextView案例三:单击链接弹出Activity * @author lynnli1229 */public class TextViewMainActivity extends Activity {    private TextView textView1, textView2;    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                textView1 = (TextView) findViewById(R.id.tv1);        textView2 = (TextView) findViewById(R.id.tv2);        String textStr1 = "点击链接到TextViewOneActivity";        String textStr2 = "点击链接到TextViewTwoActivity";                //拆分字符串        SpannableString ss1 = new SpannableString(textStr1);        SpannableString ss2 = new SpannableString(textStr2);        ss1.setSpan(new ClickableSpan() {            @Override            public void onClick(View widget) {                Intent intent = new Intent(TextViewMainActivity.this, TextViewOneActivity.class);                startActivity(intent);            }        }, 0, textStr1.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);        ss2.setSpan(new ClickableSpan() {            @Override            public void onClick(View widget) {                Intent intent = new Intent(TextViewMainActivity.this, TextViewTwoActivity.class);                startActivity(intent);            }        }, 0, textStr2.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);        textView1.setText(ss1);        textView2.setText(ss2);        textView1.setMovementMethod(LinkMovementMethod.getInstance());        textView2.setMovementMethod(LinkMovementMethod.getInstance());    }}

TextViewOneActivity.java

package com.android.textview;import android.app.Activity;import android.os.Bundle;public class TextViewOneActivity extends Activity {        @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setTitle("This is TextViewOneActivity");    }}

TextViewTwoActivity.java

package com.android.textview;import android.app.Activity;import android.os.Bundle;public class TextViewTwoActivity extends Activity {        @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setTitle("This is TextViewTwoActivity");    }}

三、案例效果展示

 
 

 

转载于:https://www.cnblogs.com/snake-hand/archive/2013/06/10/3131111.html

你可能感兴趣的文章
Django----------路由控制
查看>>
将数字转化为字符串的快捷方式
查看>>
java23种设计模式
查看>>
冲刺周期一--站立会议04
查看>>
支持IE6以上阴影效果纯CSS
查看>>
优化算法与特征缩放
查看>>
NOIP模板复习(4)区间操作之莫队算法,树状数组,线段树
查看>>
深入理解PHP中的引用和赋值
查看>>
Shell父进程获取子进程的变量值
查看>>
BOM——检测浏览器
查看>>
Hanoi塔问题——递归
查看>>
高斯 到 正态分布 的前世今生
查看>>
for 循环遍历字典中的键值两种方法
查看>>
计算客 商品推荐走马灯(简单)(求区间全部连续的回文串价值)
查看>>
IOS 'NSInternalInconsistencyException'
查看>>
vim安装ctags,taglist和Pydiction
查看>>
机器学习系列之EM算法
查看>>
Time.timeScale 对 协程WaitForSeconds的影响
查看>>
Java并发编程-CAS
查看>>
SQL Server 2008的备份和日志收缩
查看>>