Android自动判定输入的是电话号码还是网址
16lz
2022-03-31
----------------------------------------------------------------------------------------------
原文地址:http://blog.csdn.net/android_tutor/article/details/5000162
----------------------------------------------------------------------------------------------
当我们在一个EditText输入电话或者网址的时候,让Android自动判断,当我们输入的是电话,我们点击输入内容将调用打电话程序,当我们输入是网址点击将打开浏览器程序.而Linkify很好的解决了这个问题
XML配置文件:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" ><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="请输入电话或者E-mail或者网址:" /><EditText android:id="@+id/et1" android:layout_width="320dp" android:layout_height="wrap_content"/><TextView android:id="@+id/tv1" android:layout_width="fill_parent" android:layout_height="wrap_content"/></LinearLayout>
Java代码:
package com.rex;import android.app.Activity;import android.os.Bundle;import android.text.util.Linkify;import android.view.KeyEvent;import android.view.View;import android.widget.EditText;import android.widget.TextView;public class EditTextTest1 extends Activity{ private EditText et; private TextView tv;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.edittext); //获取资源 et = (EditText)findViewById(R.id.et1); tv = (TextView)findViewById(R.id.tv1); //增加事件响应 et.setOnKeyListener(new EditText.OnKeyListener(){ @Override public boolean onKey(View v, int keyCode, KeyEvent event) { tv.setText(et.getText()); //判断输入的类型是哪种,并与系统连接 Linkify.addLinks(tv, Linkify.WEB_URLS| Linkify.EMAIL_ADDRESSES|Linkify.PHONE_NUMBERS); return false; } });}}当然也可以在配置文件中直接实现:
也就是在TextView里边加一个AutoLink
<TextView android:id="@+id/tv1" android:autoLink="web|phone|email" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
更多相关文章
- Android:电话拨号器
- 如何屏蔽自动弹出的输入法软件盘
- android新手学习帮助网址
- InputStream输入流,读取数据实例
- 在android中举例说明如何用WebView.loadUri();来打开网页
- Android(安卓)editText 输入字数限制
- Android的第一个应用(拨打电话)
- 【Android】debug 状态下其签名文件 debug.keystore 相关(如何获
- cocos2dx在windows下开发,编译到android上