Android开发

Android取消EditText自动获取默认焦点

本文主要是介绍Android取消EditText自动获取默认焦点,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

最近在通讯录新建联系人=中,一进入一个页面, EditText默认就会自动获取焦点,很是郁闷, 如何让EditText不自动获取焦点?

那么如何取消这个默认行为呢?

在网上找了好久,有点监听软键盘事件,有点调用clearFouse()方法,但是测试了都没有!xml中也找不到相应的属性可以关闭这个默认行为

解决之道:在EditText的父级控件中找一个,设置成

android:focusable="true" 
android:focusableInTouchMode="true" 

demo.xml:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
 android:layout_width="fill_parent" 
 android:layout_height="fill_parent" 
 android:background="#ffffff" 
 android:baselineAligned="false" 
 android:focusable="true" 
 android:focusableInTouchMode="true" > 
   <RelativeLayout 
    android:layout_width="250dp" 
    android:layout_height="wrap_content" 
    android:id="@+id/txtLayout" 
    android:layout_marginTop="20dp" 
android:layout_centerHorizontal="true" 
    > 
   <EditText 
    android:layout_width="fill_parent" 
    android:layout_height="35dp" 
    android:id="@+id/editPhone" 
    android:phoneNumber="true" 
    android:text="@string/txtaddPhone" 
    android:textColor="#D8D8D8" 
android:background="@drawable/txtupbg" 
    android:textSize="15dp" 
    /> 
   </RelativeLayout> 
</RelativeLayout>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持找一找教程网!

这篇关于Android取消EditText自动获取默认焦点的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!