您的位置:首页 > 其它

EditText 不让其自动获取焦点

2013-04-28 13:18 218 查看
在项目中,一进入一个页面, EditText默认就会自动获取焦点。

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

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

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

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

这样,就把EditText默认的行为截断了!

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#CFD4DA"
android:orientation="vertical" >

<!-- 查询 增加 -->

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="40dp"
android:background="#A1AEBF"
android:focusable="true"
android:focusableInTouchMode="true"
android:orientation="horizontal" >

<EditText
android:padding="2dp"
android:id="@+id/et_query"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="4"
android:maxLength="13" />

<Button
android:id="@+id/bt_query"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:text="查询" />

<Button
android:id="@+id/bt_add"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:text="增加" />
</LinearLayout>

<ListView
android:id="@+id/lv_info_query_send"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="20dp" />

</LinearLayout>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: