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>

      最终效果如下所示:

    最终效果

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

      希望本文对您有所帮助!

  • 相关阅读:
    Go 语言简介(下)— 特性
    Array.length vs Array.prototype.length
    【转】javascript Object使用Array的方法
    【转】大话程序猿眼里的高并发架构
    【转】The magic behind array length property
    【转】Build Your own Simplified AngularJS in 200 Lines of JavaScript
    【转】在 2016 年做 PHP 开发是一种什么样的体验?(一)
    【转】大话程序猿眼里的高并发
    php通过token验证表单重复提交
    windows 杀进程软件
  • 原文地址:https://www.cnblogs.com/waw/p/2156603.html
Copyright © 2011-2022 走看看