在我们的应用中,有时候一进入一个页面, EditText默认就会自动获取焦点。弹出输入法框,用户体验很不好,
那么如何取消这个默认行为呢?其实很简单:在其父控件下,添加如下的属性,就可以完美解决。
android:focusable="true"
android:focusableInTouchMode="true"
比如我的代码:
<!-- search bar -->
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dip"
android:background="@drawable/common_top_bar_bg"
android:gravity="center"
android:orientation="horizontal"
android:focusable="true"
android:focusableInTouchMode="true">
<EditText
android:id="@+id/edit_search"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
android:drawableRight="@drawable/category_search_btn"
android:gravity="left|center"
android:hint="@string/search_placeholder"
android:textAppearance="?android:textAppearanceMedium" />
</LinearLayout>
<!-- search bar -->
好了今天这个破事就到这里,其实android开发就这么点破事。关于其他破事,见专栏:
更多Android开发的破事,请看专栏:《Android开发那点破事》