zoukankan      html  css  js  c++  java
  • 在Android开发中如何移除EditText上的输入焦点 狼人:

      当我们创建一个带EditText 或 AutoCompleteTextView的视图时,在加载视图时总是会把输入的焦点自动移动到第一个输入框。如下图所示:

    带EditText 或 AutoCompleteTextView的视图

      下面是mail.xml布局文件:

    1. <!--?xml version="1.0" encoding="utf-8"?-->
    2. <linearlayout android:layout_height="fill_parent" android:layout_width="fill_parent" android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android">
    3. <button android:id="@+id/Button01" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="@string/button_text">
    4. </button>
    5. <edittext android:hint="@string/hint" android:id="@+id/EditText01" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="">
    6. </edittext>
    7. <button android:id="@+id/Button02" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="@string/button_text">
    8. </button>
    9. </linearlayout>
    10.

      我们如何才能把焦点从EditText上移除呢?最简单的方法是创建一个不可见的(invisible)LinearLayout,LinearLayout将会把焦点从EditText上移走。

      我们修改mail.xml布局文件,在EditText之前增加一个LinearLayout ,如下所示:

    1. <!--?xml version="1.0" encoding="utf-8"?-->
    2. <linearlayout android:layout_height="fill_parent" android:layout_width="fill_parent" android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android">
    3. <button android:id="@+id/Button01" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="@string/button_text">
    4. </button>
    5. <linearlayout android:focusable="true" android:focusableintouchmode="true" android:layout_height="0px" android:layout_width="0px">
    6. <edittext android:hint="@string/hint" android:id="@+id/EditText01" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="">
    7. </edittext>
    8. <button android:id="@+id/Button02" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="@string/button_text">
    9. </button>
    10. </linearlayout>
    11. </linearlayout>

      最终效果如下所示:

    最终效果

      不需要任何代码就把焦点移除了,是不是最简单的解决方案?

      希望本文对您有所帮助!

  • 相关阅读:
    最火的.NET开源项目[转]
    ExtJs4.1目录结构介绍和使用说明[转]
    mvc4 Forms验证存储 两种登录代码
    微服务 第九章 springboot 使用NoSql数据库:redis
    【数据挖掘】关联分析之Apriori(转载)
    C语言面试
    10.15习题2
    java 执行linux命令
    servlet tomcat eclipse
    002_监测ssl证书过期时间
  • 原文地址:https://www.cnblogs.com/waw/p/2164477.html
Copyright © 2011-2022 走看看