button状态

/*

一、按钮的状态

1.UIControlStateNormal

1> 除开UIControlStateHighlighted、UIControlStateDisabled、UIControlStateSelected以外的其他情况,都是normal状态

2> 这种状态下的按钮【可以】接收点击事件

2.UIControlStateHighlighted

1> 【当按住按钮不松开】或者【highlighted = YES】时就能达到这种状态

2> 这种状态下的按钮【可以】接收点击事件

3.UIControlStateDisabled

1> 【button.enabled = NO】时就能达到这种状态

2> 这种状态下的按钮【无法】接收点击事件

4.UIControlStateSelected

1> 【button.selected = YES】时就能达到这种状态

2> 这种状态下的按钮【可以】接收点击事件

二、让按钮无法点击的2种方法

1> button.enabled = NO;

*【会】进入UIControlStateDisabled状态

2> button.userInteractionEnabled = NO;

*【不会】进入UIControlStateDisabled状态,继续保持当前状态

*/

#import "ViewController.h"

#import "LZJButton.h"

@interface ViewController ()

/** 按钮 */

@property (nonatomic, weak) LZJButton *button;

@end

@implementation ViewController

- (void)viewDidLoad {

[super viewDidLoad];

LZJButton *button = [[LZJButton alloc] init];

[button setTitle:@"我是按钮" forState:UIControlStateNormal];

[button setTitleColor:[UIColor redColor] forState:UIControlStateNormal];

[button setTitleColor:[UIColor greenColor] forState:UIControlStateHighlighted];

[button setTitleColor:[UIColor blueColor] forState:UIControlStateSelected];

[button setTitleColor:[UIColor grayColor] forState:UIControlStateDisabled];

button.frame = CGRectMake(100, 100, 100, 30);

[button addTarget:self action:@selector(buttonClick) forControlEvents:UIControlEventTouchUpInside];

[self.view addSubview:button];

self.button = button;

}

- (void)buttonClick {

NSLog(@"%s", __func__);

}

- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event

{

self.button.selected = YES;

//    self.button.highlighted = YES;

}

---------------------------------------

#import "LZJButton.h"

@implementation LZJButton

- (BOOL)isHighlighted

{

return YES;

}

//- (void)setHighlighted:(BOOL)highlighted

//{

//

//}

@end

时间: 2024-12-18 15:53:46

button状态的相关文章

UITableviewCell上添加button,按钮的normal或selected状态显示不正常的可能原因。

根据返回的信息对cell上button的状态进行设置时,由于cell的复用机制,有时候会导致button的显示状态和我们设置的状态不一样,有可能的原因是我们根据返回数据进行设置时只设置了一种状态,比如: //点击点赞按钮 if (model.user_praise) { //如果存在praise_user,说明已经点过赞,将按钮状态设置为已经点赞的状态 cell.likeButton.selected = YES; } 利用上面的方式进行设置就可能导致button状态显示不正常,正确的做法是两种

NGUI 3.5过程(三)Button button

写在前面:     本文将创建一个主要的Button.而且编写脚本,响应点击事件. 欢迎大家纠错.拍砖.原创非常辛苦,如有转载,请注明出处. Button -- button 在NGUI 3.5 里,Button这个控件,经过了整理.比方更改了创建方式(搜索.拖拽):比方合并了 2.x里的Button和Image Button.个人认为这样是合理的,wxPython的Button,就不分基本button,还是图片button,仅仅是创建时候的參数不同而已(重载). 1.创建 Widget 假设已

Tkinter教程之Button篇(2)

本文转载自:http://blog.csdn.net/jcodeer/article/details/1811300 # Tkinter教程之Button篇(2)'''5.指定Button的宽度与高度width:    宽度heigth:    高度使用三种方式:1.创建Button对象时,指定宽度与高度2.使用属性width和height来指定宽度与高度3.使用configure方法来指定宽度与高度'''from Tkinter import *root = Tk()b1 = Button(r

RecyclerView onItemClick button和布局都有单击事件时的处理方式

RecyclerView为了给开发人员提供更大的自由度.没有默认的提供onItemClick接口. 网上有一种比較简单的实现方式 , 适用于不须要针对item里面某个button做特殊处理的情况 我眼下项目的需求是, 1.单击item,跳转到用户信息页. 2.单击加关注button,更改button状态. adapter代码例如以下 public class MyAdapter extends RecyclerView.Adapter<MyAdapter.BaseViewHolder> { p

fl2440 platform总线button字符设备驱动

驱动程序: 1 #include "s3c_driver.h" 2 3 #define DRV_DESC "S3C24XX button driver" 4 5 /* Driver version*/ 6 #define DRV_MAJOR_VER 1 7 #define DRV_MINOR_VER 0 8 #define DRV_REVER_VER 0 9 10 #define DEV_NAME DEV_BUTTON_NAME 11 12 //#define DE

tkinter button 第一节

from tkinter import × from tkinter import ttk root=Tk() button=ttk.Button(root,text="Click Me")  #新建一个button项目,其中text内容显示为click me button.pack()   #排版 def callback():               #定义一个callback函数.会打印"Clicked" print("Clicked"

vc中json文件的读取、修改和添加字段的方法

前言: 本代码涉及到对json文件的读取.修改和添加方法 WTL中radir button的状态判断和设置可选以及取消可选 示例: 所需头文件: #include <json.h> #include <file_io.h> 代码部分: //读取下载线路在界面上的radir button中显示 void CMainDlg::read_download_line_from_cfg() { std_string strDownloadLine; file_io<> json_

IOS总结(学习过程中整理的笔记)

MVC模式:(model+view+controller):是一种帮你把代码功能和显示划分出来的设计模式: model:较为底层的数据引擎,负责管理实体中所继承的数据: view:和用户交互界面: controller:连接二者的桥梁: cocoa frameworks 有两个框架: foundation foundation  是cocoa中最基本的一些类:再mac应用程序中负责对象管理,内存管理,容器等相关数据: uikit: uikit:为程序提供可视化的底层构架,包括窗口,视图,控件类和

仿购物车的实现

基本实现了全选,删除等按钮点击功能 一.  首先,设置好基本的购物车界面,实现tableView的相关的 数据源 和 代理 方法在QHLShoppingCarController.m中写一个类扩展,定义下列属性: /** 模型数组 */ @property (nonatomic, strong) NSMutableArray *shoppingCar; /** 底部结算view */ @property (nonatomic, weak) QHLSettleMentView *settleMen