TV端-焦点获取简单理解

本文只涉及最简单的一些跟焦点有关的知识,包括setClickable、setEnabled、setFocusable、requestFocus 四个控件

一·setClickable
1.设置为true时,表明控件可以点击
2.设置为false时。表明不能点击;点击适用于鼠标,键盘按键,遥控器等
3.SetOnClickListener方法会默认把控件的setClickable设置为true

二·setEnabled 使能控件
1.设置为false,该控件永远不会活动,不管设置为什么属性都无效
2.设置为true,表明激活该控件,控件处于活动状态,能响应事件;比如触摸,点击,按键事件等
3.相当于总开关一样,只有总开关打开,才能使用其他事件

三·setFocusable 使能控件
1.设为true时,具备获得焦点的机会,能力,并不是说立刻获得焦点

四·requestFocus
1.设置是否获得焦点,也就是说请求立刻得到焦点

五· setFocusable和requestFocus的对比

1.焦点获取的区别
setFocusable 是具备获得焦点的能力
requestFocus 是立刻获得焦点

2.使用
setFocusable 当我们要设置某个控件的焦点监听事件时要设置setFocusable为true,否则可能会出现onFocusableChangeListener监听不到的情况

xxx.setFocusable(true);
xxx.setOnFocusChangeListener(new View.OnFocusChangeListener() {
        @Override
        public void onFocusChange(View v, boolean hasFocus) {
            if (hasFocus) {
               //获得焦点
               } else {
               }
        }
    });
}

requestFocus 一般是用在onKeyDown方法中,用来判断焦点移动后哪一个控件获得焦点

if(this.getCurrentFocus() == xxx){
     if(keyCode == KeyEvent.KEYCODE_DPAD_DOWN){
          xxx02.requestFocus();
          return true;
      }
}

以上就是我接触到的最基本的使用,记录一下

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 11,871评论 0 17
  • 上一篇文章, 一点见解: 焦点那点事(一), 了解了焦点相关的一些基本知识, 提到焦点切换的关键方法ViewPar...
    AssIstne阅读 7,836评论 7 6
  • 《ijs》速成开发手册3.0 官方用户交流:iApp开发交流(1) 239547050iApp开发交流(2) 10...
    叶染柒丶阅读 10,829评论 0 7
  • 记事本程序展示结果图: 1.建立了一个类Notepad extends JFrame implements Act...
    可乐W阅读 5,763评论 0 0
  • 妹妹与妹夫大年初一来拜年,姊妹几个一时兴起贪杯玩牌至深夜,我拍照发了朋友圈。 第二日清早醒来,打开手机刷屏,点赞...
    北上有云阅读 2,905评论 0 1

友情链接更多精彩内容