setFocusable与setFocusableInTouchMode差异以及clickable

原创 2016年05月31日 22:16:11

1、

setFocusable这个是用键盘是否能获得焦点

setFocusableInTouchMode这个是触摸是否能获得焦点


	focusable这种属性,更多的是为了解决非触摸输入的,因为你用遥控器或键盘点击控件,就必然要涉及到焦点的问题,只有可以获得焦点的控件才能响应键盘或者遥控器或者轨迹球的确定事件.

	focusableInTouchMode.这个属性在进入触摸输入模式后,该控件是否还有获得焦点的能力.可以简单的理解为,用户一旦开始通过点击屏幕的方式输入,手机就进入了"touch mode".focusableInTouchMode这种属性,多半是设给EditText这种即使在TouchMode下,依然需要获取焦点的控件.比如Button之类的控件,在touch mode下,就已经没有获取焦点的必要了.Android里面EditText是用来接受用户输入的,那问题是在touch mode下我们没键盘,怎么办呢,android会主动给我们弹出一个软键盘出来(或者是手写输入法,这些无所谓...).那现在想象,我们的界面上有五个这种EditText,那弹出的软键盘的输入,到底要写在哪个EditText上呢?所以这里就需要焦点来介入了.只有获得了焦点的那个EditText,才能获取软键盘的输入.

2、clickable
	EditText默认clickable为true
	TextView默认clickable为false,使用android:clickable="true" 可以设置为true。也可以不再布局文件设置,调用TextView.setOnClickListener()自动设置为true。

版权声明:本文为博主原创文章,未经博主允许不得转载。

android开发之setFocusable()和 setFocusableInTouchMode()方法的区别

setFocusable():控制键盘是否可以获得这个按钮的焦点。(我按实体键盘上方向键,button被选中)。   setFocusableInTouchMode(true):设置焦点联系方式(...
  • yangkeshihaer
  • yangkeshihaer
  • 2014年08月13日 22:17
  • 6565

Android: 让一个EditText失去焦点,setFocusableInTouchMode与setFocusable 效果不一样

举个例子,根据条件判断是否禁用editText:  if(a > 3) { editText.setFocusableInTouchMode(false); //editText.setFoc...
  • codingbuddy
  • codingbuddy
  • 2013年09月24日 21:51
  • 2977

OnClick与android:focusableInTouchMode="true"

也许这是一个老问题,但是遇到了。所以将自己找的解决办法写下来。 程序中有一个button,它设置了android:focusableInTouchMode="true",并且也设置了按键onClic...
  • aojianhai
  • aojianhai
  • 2016年03月31日 11:44
  • 496

setFocusableInTouchMode的部分问题

1、如果在XML中的View设置了android:focusableInTouchMode="true",当软键盘弹出了。点击本View就会先隐藏掉软键盘,但是不会执行View的点击事件中的代码。(当...
  • u013361668
  • u013361668
  • 2016年06月17日 07:39
  • 765

focusable ,focusableInTouchMode,控件焦点属性;Android 如何让EditText不自动获取焦点

大多数控件都可以获取焦点,也就是处在选中状态。如果android:focusable属性值为true,表示可以通过键盘(虚拟键盘或物理键盘)或轨迹球将焦点移动到当前控件上。如果设置该属性为false,...
  • u010015108
  • u010015108
  • 2016年10月12日 14:17
  • 3122

android:focusable和android:focusableInTouchMode的区别

简明的介绍了区别。
  • CSDN_SUSAN
  • CSDN_SUSAN
  • 2015年06月26日 16:36
  • 18586

Android 开发之setFocusable 焦点问题

最近在开发当中遇到一种需求,要根据某些条件来对EditText弹出键盘与否进行控制,本来想使用setFocusable(false)和setFocuseable(true)来控制,但是发现取消焦点再设...
  • qq_34425670
  • qq_34425670
  • 2016年06月12日 22:06
  • 2871

详解:setEnabled / setClickable / setFocusable 的用法 及 相关性

setEnabled(boolean bool) 设置当前控件是否被激活,是否可用 bool 为 true 时 ,表明该控件被激活,控件处于”活动状态“,能够响应或触发各种事件了,比如触摸、点击、...
  • MLQ8087
  • MLQ8087
  • 2016年12月01日 17:35
  • 1031

Android中View的setClickable,setEnable,setFocusable区别

setClickable 设置为true时,表明控件可以点击,如果为false,就不能点击;
  • zxwd2015
  • zxwd2015
  • 2016年10月13日 16:48
  • 1361

android中setClickable,setEnabled,setFocusable的含义及区别

setClickable  设置为true时,表明控件可以点击,如果为false,就不能点击;“点击”适用于鼠标、键盘按键、遥控器等; 注意,setOnClickListener方法会默认把控件的s...
  • yizunda
  • yizunda
  • 2015年12月02日 04:31
  • 5250
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:setFocusable与setFocusableInTouchMode差异以及clickable
举报原因:
原因补充:

(最多只允许输入30个字)