`
zkl_1987
  • 浏览: 245745 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

android 笔记 --- Android自动判断输入是电话,网址或者Email的方法—-Linkify的应用

阅读更多
本节要讲的是,当我们在一个EditText输入电话或者网址还是Email的时候,让Android自动判断,当我们输入的是电话,我们点击输入内容将调用打电话程序,当我们输入是网址点击将打开浏览器程序.而Linkify很好的解决了这个问题.我们将分四步来完成这个Demo.

Step 1:新建一个Android工程,命名为LinkifyDemo.

Step 2:打开main.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="340px"
 android:layout_height="wrap_content"
/>
<TextView
 android:id="@+id/tv1"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
/>
</LinearLayout>


Step 3:在主应用程序LinkifyDemo.java里代码修改如下:

package com.android.test;
 
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 LinkifyDemo extends Activity {
 
 private EditText et;
 private TextView tv;
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
 
        //获取资源
        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;
   }
        });
    }
}




扩展学习:

当然我们还有更简单的方法.就是在main.xml里id为tv的TextView里申明这句话也就是:

<TextView
 android:id="@+id/tv1"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 
 android:autoLink="web|phone|email"
/>


也能达到同样的效果,呵呵.今天到此结束,谢谢大家!

分享到:
评论

相关推荐

    Andoid使用Linkify自动判断输入是否是电话、网址、Email.rar

    Andoid自动判断输入是电话,网址或者Email的方法----Linkify的应用,本教程主讲的是,当我们在一个EditText输入电话或者网址还是Email的时候,让Android自动判断,当我们输入的是电话,我们点击输入内容将调用打电话程序,...

    Android 自动判断是电话,网址,EMAIL方法之Linkify的使用

    在Android开发中,有时我们需要在应用中处理用户输入的文本,比如当用户在EditText中输入电话号码、网址或电子邮件地址时,我们希望点击这些内容可以自动启动相应的应用程序,如拨打电话、打开网页或发送邮件。...

    marked-linkify-it:使用linkify-it标记网址

    const linkify = require ( "marked-linkify-it" ) ; // or ES Module script // import marked from "https://cdn.jsdelivr.net/gh/markedjs/marked/lib/marked.esm.js"; // import linkify from ...

    android-linkify:安卓链接

    在`android-linkify-master`这个项目中,可能包含了示例代码和自定义链接处理的实现。你可以通过查阅项目源码,学习如何扩展`Linkify`的功能,或者实现自己的链接解析和处理逻辑。 总结来说,`android-linkify`是...

    android 具有正确表达式的TextView Linkify规则

    `Linkify` 是Android SDK提供的一种方便的方法,它可以将TextView中的URL、电话号码、电子邮件地址等文本自动转化为可点击的链接。本文将详细介绍如何正确使用`Linkify`规则来实现这一功能。 首先,我们来看`...

    前端开源库-html-linkify

    这个库在处理用户生成内容(UGC)或者需要自动识别和美化链接的场景中非常有用,可以提升用户体验,使文本中的网址变得更加直观和易用。 ### 一、html-linkify的基本原理 html-linkify工作原理主要是通过正则...

    Android-TextView-LinkBuilder-master.zip

    本项目“Android-TextView-LinkBuilder-master”聚焦于在TextView中创建可点击的链接,这对于实现诸如展示帮助文档、嵌入网址或者用户协议等具有交互性文本的场景非常实用。下面我们将深入探讨这一主题。 首先,...

    Linkify_android_

    在Android开发中,"Linkify"是一个非常实用的功能,它能帮助开发者自动将文本中的URL、电话号码、电子邮件地址等可链接的内容转化为可点击的超链接。标题"Linkify_android_"暗示我们将深入探讨如何在Android应用中...

    前端项目-jQuery-linkify.zip

    这个项目基于流行的JavaScript库jQuery,目的是帮助开发者轻松地将文本中的网址转化为可点击的超链接,提升用户体验,特别是在处理用户生成内容(UGC)或者聊天应用中,能自动将文本中的URL转换为实际的链接。...

    给textview加链接---Linkify用法

    首先,Linkify是Android SDK中一个非常实用的工具类,它能够自动检测文本中的URL、电话号码等,并将其转换为可点击的链接。通过调用TextView的`Linkify.addLinks()`方法,我们可以轻松地为TextView添加链接。 以下...

    前端项目-angular-linkify.zip

    这个项目对于那些需要在用户输入或者显示文本中识别和格式化链接的Web应用来说非常有用。 **AngularJS框架** AngularJS是Google维护的一个开源JavaScript框架,用于构建单页应用程序(SPA)。它通过MVC(模型-视图...

    react-easy-linkify:轻松Reactlinkify,包括提及和主题标签。 用打字稿写

    React简单的Linkify React Easy Linkify是React的组件,用于查找URL /提及/标签并将其转换为Links。 该软件包基于 。 我重写了它的scanner ,React Component和Plugin Module,使它们更加灵活。 非常重要的是,我使...

    android自动识别输入的字符串

    在Android开发中,有时我们需要对用户输入的字符串进行智能处理,比如当用户在文本框中输入网址、邮箱地址或者电话号码时,我们希望系统能够自动识别这些内容,并将其转化为可点击的链接,以便用户可以直接点击打开...

    Laravel开发-linkify

    这个功能在处理用户生成内容(UGC)时特别有用,例如评论、博客文章或者论坛帖子,可以确保链接的格式正确,提升用户体验。"linkify"这个包不仅继承了mist\linify的功能,而且进一步优化,以适应Laravel 5的生态系统...

    v-linkify:一个简单的Vue指令,可将URL和电子邮件转换为可点击的链接

    use ( vLinkify )本地安装component.vue import { vLinkify as linkify } from "v-linkify" ;export default { directives : { linkify }}基本用法&lt; template&gt; &lt; div&gt; v-linkify ...

    react-linkify:React组件将文本中的链接(URL,电子邮件等)解析为可点击的链接

    &lt;Linkify&gt;See examples at tasti.github.io/react-linkify/.&lt;/Linkify&gt; 呈现给: 请参阅tasti.github.io/react-linkify/示例。 先进的 如果您感到懒惰,可以将Linkify包装在您希望链接变为可单击的任何位置。 ...

    Python库 | mdx_linkify-2.1.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:mdx_linkify-2.1.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    PyPI 官网下载 | mdx_linkify-1.3.tar.gz

    《PyPI官网下载:深入解析mdx_linkify-1.3.tar.gz》 在Python的世界里,PyPI(Python Package Index)是众多开发者获取和分享软件包的重要平台。本篇文章将详细探讨标题提及的资源——"mdx_linkify-1.3.tar.gz",它...

    Android-TextView.rar_android

    在Android开发中,`TextView`是用于显示文本的视图组件,它在用户界面中扮演着重要的角色。这篇文档将深入探讨如何配置和使用`TextView`,以...了解并熟练掌握`TextView`的使用,对于创建高质量的Android应用至关重要。

    Android应用:TextView超级链接的2种实现方法

    在Android开发中,...以上就是Android应用中TextView超链接的两种实现方法,无论是在XML布局文件中设置,还是在Java代码中动态处理,都能有效地为用户提供互动体验。在实际开发中,应根据项目需求选择合适的方法。

Global site tag (gtag.js) - Google Analytics