
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
之前一直疑惑android上的链接是怎么生成的,今天终于知道了,happy的同时,把这个小东西跟朋友们分享以下。
首先还是延续我一贯的作风,先贴出来布局页面的代码(linkifylayout.xml)
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
android:layout_width= "wrap_content"
android:layout_height="wrap_content">
android:layout_width= "wrap_content"
android:layout_height="wrap_content">
主程序LinkifyTextView.java
package test.shi;
import android.app.Activity;
import android.os.Bundle;
import android.text.util.Linkify;
import android.view.KeyEvent;
import android.view.View;
import android.widget.*;
public class LinkifyTextView extends Activity {
private TextView myTextView1;
private EditText myEditText1;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.linkifylayout);
myTextView1=(TextView)findViewById(R.id.myTextView1);
myEditText1=(EditText)findViewById(R.id.myEditText1);
myEditText1.setOnKeyListener(new EditText.OnKeyListener()
{
@Override
public boolean onKey(View v, int arg1, KeyEvent arg2) {
// TODO Auto-generated method stub
myTextView1.setText(myEditText1.getText());
//此处是关键,感应myTextView1是web链接还是email链接,或者是电话号码
Linkify.addLinks
(
myTextView1,Linkify.WEB_URLS|
Linkify.EMAIL_ADDRESSES|
Linkify.PHONE_NUMBERS
);
return false;
}
});
}
}
除了使用Linkify之外,还可以在linkifylayout.xml文件中设置TextView的android:autoLink实现这种HyperLink的效果。如下:
android:layout_width= "wrap_content"
android:layout_height="wrap_content"
android:autoLink="web|email|phone">
通过在程序中设置
myTextView1.setText(“#”);
myTextView1.setText(“13512345678”);
myTextView1.setText(“hello@#”);
这样运行时myTextView1就会生成链接,当用户点击时,会自动调用系统的Intent,以浏览器打开网址、发送邮件或拨打电话。
【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与联系我们,我们会予以更改或删除相关文章,以保证您的权益!