1.取消EditText自动获取焦点

  在项目中,一进入一个页面, EditText默认就会自动获取焦点,弹出输入法界面,很不友好。那么如何取消这个默认行为呢?

  解决之道:在EditText的父级控件中找一个,设置成android:focusable="true" android:focusableInTouchMode="true",并且使用<requestFocus />来获取焦点即可。

  示例代码:

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:focusable="true"
android:focusableInTouchMode="true"> <requestFocus /> <EditText
android:layout_width="match_parent"
android:layout_height="wrap_content" /> </LinearLayout>
2.Android中组件焦点抢占问题解决

  在项在android中经常会出现焦点抢占的情况,在本文第一点中已经提出了一种解决方案,在部分情况下是可行的。然而在有些时候有多个组件抢占焦点,使得1中的方案并不能正确执行,例如在使用Searchview且指定了其默认展开时【android:iconifiedByDefault="false"】,其父组件并不能获取焦点,此时,考虑在父组件中添加如下属性:android:descendantFocusability

  • android:descendantFocusability="blocksDescendants"      //会覆盖子类控件而直接获得焦点android:focusable="false"
  • android:descendantFocusability="beforeDescendants"  //会优先其子类控件而获取到焦点
  • android:descendantFocusability="afterDescendants"        //只有当其子类控件不需要获取焦点时才获取焦点

Android 技巧记录的更多相关文章

  1. vim 使用技巧记录

    vim 使用技巧记录 1.批量注释与取消注释 命令格式:起始行号,结束行号s#^#//#g 例如: 注释代码3到15行,"//"可以是其他的"" :3,15s# ...

  2. Android技巧分享——如何用电脑下载在Google play中应用的apk文件

    [Android技巧分享系列] 1.Android技巧分享——让官方模拟器和genymotion虚拟机飞起来 2.Android技巧分享——如何用电脑下载在Google play中应用的apk文件 G ...

  3. Android学习记录(3)—Android中ContentProvider的基本原理学习总结

    一.ContentProvider简介        当应用继承ContentProvider类,并重写该类用于提供数据和存储数据的方法,就可以向其他应用共享其数据.虽然使用其他方法也可以对外共享数据 ...

  4. 49、android studio 使用技巧记录

    1.删除 cmd+del 2.自动导入需要的类  option+enter 3.Option + F7 ——查找哪里引用了该方 Cmd + Option + F7 —— 列出引用的列表 4.Cmd + ...

  5. Eclipse中调试Android技巧

    Android eclipse中程序调试 一:断点调试 用eclipse开发android程序的时,跟VS一样是可以断点单步调试的. 步骤如下. 1 设置断点:在编码窗体的左边框上用鼠标双击,或者右键 ...

  6. android技巧总结

    技巧1. 在写布局文件时,有时不需要给控件指定text值,但是又想知道他的位置是否是自己想要他在的位置.这种情况只有在运行时给他指定text值才能确切地知道它显示的位置. 现在有一种方法可以实现,即利 ...

  7. Android开发经验记录

    一.    代码规范 定一个规范的主要目的,是为了让不同的开发人员写的代码能保持一致性,方便别人看自己的代码.另外,对个人来说,也能起到让自己看着舒服的作用. 1.      基本 * 使用UTF-8 ...

  8. android 点滴记录 ICCID IMSI IMEI MEID 关系 和 区别,相关参数在什么情况下可以获取...

    1:ICCID:Integrate circuit card identity 集成电路卡识别码(固化在手机SIM卡中) ICCID为IC卡的唯一识别号码,共有20位数字组成,其编码格式为:XXXXX ...

  9. PyCharm使用技巧记录(一)如何查看变量

    [为了方便自己以后查阅,记录下使用PyCharm时的一些小技巧] 正在学习Python,在调试Python程序时,遇到了一个非常大的问题:如何能够方便地查看变量的取值呢? 由于使用matlab多年,深 ...

随机推荐

  1. UIView和其子类的几个初始化函数执行的时机

    -(id)initWithFrame:(CGRect)frame - UIView的指定初始化方法; 总是发送给UIView去初始化, 除非是从一个nib文件中加载的; -(id)initWithCo ...

  2. SharePoint各版本信息

    参考网页http://blogs.msdn.com/b/erica/archive/2013/05/30/sharepoint-server-2010-version-reference.aspx

  3. WindowsForm 增 删 查 改

    首先是连接数据库  在数据库里写代码 建立一个数据库下面是代码 create database JinXiaoCun go use JinXiaoCun go create table users ( ...

  4. 去除除服串中的某些字符,不用String内置方法

    import java.util.regex.Matcher; import java.util.regex.Pattern; public class test { public static vo ...

  5. Android识别图片中脸部信息

    在Android开发中,大部分应用都是以用户为第一位,用户都有自己的个人中心,用来展示自己的信息,头像无疑是展示自己最直观的方式,随着各种政策的出台,实名认证,真人头像变得尤为重要,如果要求上传真人头 ...

  6. Python Challenge 过关心得(0)

    最近开始用Openerp进行开发,在python语言本身上并没有什么太大的进展,于是决定利用空闲时间做一点python练习. 最终找到了这款叫做Python Challenge(http://www. ...

  7. Oracle EBS-SQL (QA-1):检查超出检验周期的检验数据.sql

    select msi.segment1                                    物料编码,          msi.DESCRIPTION                ...

  8. linux swap 分区调控(swap分区 lvm管理)

    注:linux swap分区 采用lvm管理,调控可以采用下面的方法 一.查看 swap    lv [root@testdb ~]# vgdisplay -v Finding all volume ...

  9. cf467B Fedor and New Game

    B. Fedor and New Game time limit per test 1 second memory limit per test 256 megabytes input standar ...

  10. python-django如何在sae中使用自带ImageField和FileField -django-上善若水小站

    python-django如何在sae中使用自带ImageField和FileField -django-上善若水小站 python-django如何在sae中使用自带ImageField和FileF ...