Android-Linkify的使用

来源:互联网 发布:安卓程序员用mac好吗 编辑:程序博客网 时间:2024/05/05 21:23

Linkify

Linkify是一个辅助类,它可以自动地在TextView(或其派生类)中通过RegEx(正则表达式)模式匹配来创建超链接。当TextView中的内容匹配成功并生成超链接之后,TextView内容的下面就会出现下划线,单击则可以触发相应的操作,例如拨号,打开浏览器等。

Linkify使用

Linkify可以在xml中使用,也可以通过Java代码使用。

XML方式

通过给TextView设置android:autoLink属性来决定要匹配TextView的内 容,这样就可以在用户单击该TextView的时候直接使用浏览器打开http://www.baidu.com。

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context="com.ahjzu.cub.linkify.MainActivity">    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:autoLink="phone|email|web"        android:text="http://www.baidu.com" /></RelativeLayout>

Java代码方式

通过Linkify.addLinks方法为TextView添加匹配内容的RegEx模式。

public class MainActivity extends AppCompatActivity {    private TextView text;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        text = (TextView) findViewById(R.id.text);        Linkify.addLinks(text, Linkify.EMAIL_ADDRESSES|Linkify.PHONE_NUMBERS|Linkify.WEB_URLS);    }}

实现效果图如下

实现效果

2 0
原创粉丝点击