LinearLayout控件

 <LinearLayoutandroid:id="@+id/gj_recruit"android:layout_width="match_parent"android:layout_height="50dip"android:layout_marginBottom="17dip"android:background="@drawable/toggle_fillet"android:focusableInTouchMode="true"android:clickable="true"android:orientation="horizontal"android:padding="7dip">

1、通过background切换获取焦点和失去焦点的样式,在drawable中新建一个toggle_fillet.xml。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"><item android:state_focused="true"><shape><solid android:color="@color/gj_green" /><corners android:bottomLeftRadius="25dp" android:bottomRightRadius="25dp" android:topLeftRadius="25dp" android:topRightRadius="25dp" /><stroke android:width="1dp" android:color="#46c37b" /></shape></item><item><shape><solid android:color="@color/grid_state_pressed" /><corners android:bottomLeftRadius="25dp" android:bottomRightRadius="25dp" android:topLeftRadius="25dp" android:topRightRadius="25dp" /><stroke android:width="1dp" android:color="@color/gj_green" /></shape></item>
</selector>

没有属性的item为默认的样式,state_fouchsed为获取焦点时的样式(item属性参考:点击打开链接)。

2、设置focusableInTouchMode和clickable为true,但是设置focusableInTouchMode为true的时候会存在一个问题,第一次点击控件的时候,它将取得焦点,第二次点击的时候才去响应点击事件。解决方案:implements View.OnTouchListener,继承touch事件,当松开的时候去执行点击事件。

2.1、判断touch事件的状态,松开时执行点击事件:

 @Overridepublic boolean onTouch(View v, MotionEvent event) {if (event.getAction() == MotionEvent.ACTION_UP){onClick(v);}return false;}

LinearLayout获取焦点并响应点击事件监听相关推荐

  1. android 判断按钮是否已经有onclicklinstener,通过点击事件监听setOnClickListener彻底理解回调...

    前言 老司机们对于回调肯定熟悉得不能再熟悉了,但是新司机可能还是一脸懵逼的,我比较笨,当年懵逼了好久,看夏安明的这一篇博客地址,虽然下边的留言都是,写得好!懂了懂了!但是我当时看了三遍还是不懂好吗 - ...

  2. 通过点击事件监听 setOnClickListener 彻底理解回调-Android

    前言 老司机们对于回调肯定熟悉得不能再熟悉了,但是新司机可能还是一脸懵逼的,我比较笨,当年懵逼了好久,看夏安明的这一篇博客地址,虽然下边的留言都是,写得好!懂了懂了!但是我当时看了三遍还是不懂好吗 - ...

  3. android 键盘点击事件监听事件,Android 键盘事件触发以及监听

    一.Android 手动显示和隐藏软键盘 如果输入法在窗口上已经显示,则隐藏,反之则显示 InputMethodManager imm = (InputMethodManager) getSystem ...

  4. angular4点击事件监听_JavaScript从零开始——DOM事件编程(1)

    事件的本质是程序各个组成部分之间的一种通信方式,也是异步编程的一种实现.DOM 支持大量的事件,本章开始,我们一起看看 DOM 的事件编程. 1 概念 DOM 的事件操作(监听和触发),都定义在Eve ...

  5. java按钮点击事件监听_按钮事件监听

    [java]代码库/** * 功能:按钮事件监听 */ package com.test; import java.awt.*; import javax.swing.*; import java.a ...

  6. RecyclerView点击事件监听

    通过一个demo记录recyclerview的基础用法,包括设置item间距,adapter内监听点击和接口回调监听. MyAdapter package com.example.kw.recycle ...

  7. html表格td点击事件,监听layui中的table中的td点击事件

    上图 就是用layui生成的一个table表格; 在这里我们给td绑定class,再通过jq的方式去监听是不可行的; 会监听不到事件; 不过在layui中,给了监听方法,并且还可以获取到该行所有的数据 ...

  8. android通知栏显示,通知栏点击事件监听

    android通知是通过Notification来实现的,显示在通知栏,不管是系统通知还是本地通知都可以通过Notification显示在通知栏中. 通知显示参考:https://blog.csdn. ...

  9. js鼠标点击事件监听

    鼠标移动监听: <script>var cont = 0;function f() {document.getElementById("an1").innerHTML ...

最新文章

  1. 排序算法——冒泡排序、选择排序、直接插入排序
  2. 【转】shell之for、while、until循环
  3. Win32多线程编程(6) — 多线程协作及线程的池化管理
  4. kaggle(05)---Event Recommendation Engine Challenge(基础版)
  5. 程序员的恶性循环 !
  6. 锐捷 重启计算机,win7系统锐捷客户端总是提示重启计算机后才能使用的解决方法...
  7. java 文件流传输_java – 将远程文件流式传输到文件对象中
  8. Mysql8.0以上重置初始密码的方法
  9. 昆仑通态屏幕制作(连载1)---接触篇
  10. 用计算机检索生物学文献,文献检索期末复习
  11. 霹雳狂刀---回忆录
  12. 新版edge浏览器没有internet选项怎么办?
  13. Leet Code OJ 刷题顺序参考
  14. 微服务 杜家豪_搞好“微建设微服务”也是大业绩
  15. Nginx报错Mixed Content: The page was loaded over HTTPS, This content should also be served over https
  16. 如何应对VB中对象库注册失败(MSCOMCTL.OCX)
  17. python语言设计二级教程答案2019_全国计算机等级考试二级教程2019年版——Python语言程序设计参考答案...
  18. c#使用Aspose实现Word域套打
  19. 通过传感器创新使世界更健康、更安全
  20. JavaScript函数柯理化

热门文章

  1. Tomcat面试题+http面试题+Nginx面试题+常见面试题
  2. 国内邮件服务器 评测,Windows下的邮件服务器性能评测(组图)
  3. 17、Redis、Zk分布式锁实现原理
  4. C语言数组作为函数参数
  5. Beats:Beats 入门教程 (一)
  6. a.Geant4的介绍
  7. 转:为什么要有Spring?
  8. python在哪些方向相对来说更容易就业?
  9. linux获取DNS地址 C语言,使用C语言获取DNS nameserver并进行域名解析
  10. Adobe Audition生成正弦波