zoukankan      html  css  js  c++  java
  • Android实现按钮点击效果(第一次点击变色,第二次恢复)

    1、首先创建一个按钮

    <Button

    android:id="@+id/click"

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"

    android:text="点击变色"

    android:background="@drawable/btn_st"

    android:gravity="center"/>

    2、1中创建的按钮的background用到了btn_st,在drawable下创建btn_st

    <?xml version="1.0" encoding="utf-8"?>

    <selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_activated="true" android:drawable="@drawable/color1"></item> <!-- 未点击时的颜色 -->

    <item android:state_activated="false" android:drawable="@drawable/color2"></item> <!-- 点击后的颜色 -->

    </selector>

    3、在2中用到的color1和color2,在values的strings中添加

    <drawable name="color1">#339966</drawable>

    <drawable name="color2">#fff</drawable>

    4、java代码

    (1)首先获取button 

      Button clickbtn =  (Button) findViewById(R.id.click);

    (2)设置一个标记flag

      int flag = 0;

    (3)给按钮添加监听事件

      clickbtn.setOnClickListener(new Button.OnClickListener() {

    public void onClick(View v) {

    switch(flag){

      case 0:

        mBtn[i].setActivated(false);

        flag = 1;

        break;

      case 1:

        mBtn[i].setActivated(true);

        flag = 0;

        break;

        }

      }

    }

    思路:给按钮设置激活/未激活两种不同颜色。当按钮点击一次、三次等奇数次时设置按钮为未激活状态(按下),当按钮点击偶数次是设置为激活状态(未按下)。

    作者:(奎恩)quinns
    出处:https://www.cnblogs.com/quinnsun/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    如果文中有什么错误,欢迎指出。以免更多的人被误导。
  • 相关阅读:
    第四季-专题11-LED驱动程序设计
    第四季-专题12-按键驱动程序设计
    第四季-专题9-Linux驱动开发前奏
    第四季-专题10-字符设备驱动模型
    第四季-专题7-Linux内核链表
    第四季-专题8-LINUX系统调用
    第四季-专题6-Linux内核子系统
    第四季-专题5-内核模块开发
    第四季-专题3-嵌入式Linux内核制作
    jquery js获取移动设备浏览器高度
  • 原文地址:https://www.cnblogs.com/quinnsun/p/android_stu_btn_s1.html
Copyright © 2011-2022 走看看