UIButton
来源:互联网 发布:php 合并二维数组 编辑:程序博客网 时间:2024/06/06 18:19
署名: 那年高中今日还
IOS button
1.创建
+ buttonWithType: // 创建并返回一个特定风格的按钮
2.button上的文字
– setTitle:forState:
– setTitleColor:forState:
– titleColorForState: // 返回不同状态时标题颜色.
– titleForState: // 返回不同状态时的标题
//获取button的title
currentTitle property // 当前按钮上显示的标题(只读),当按钮状态改变时值自动改变.值可以为nil.
currentTitleColor property // 当前标题颜色(只读).此值要保证不为nil,默认是白色.
3. button 上的图片
adjustsImageWhenHighlighted property // 确定当按钮高亮时图片是否改变的BOOL值,为真时图片随按钮高亮而高亮
adjustsImageWhenDisabled property // 确定当按钮高亮时图片是否改变的BOOL值,为真时图片随按钮失效而变暗
showsTouchWhenHighlighted property // 控制当按钮按下时是否闪光的BOOL值.默认NO,YES时按下会有白色光点.图片和按钮事件的不会因闪光改变.
– backgroundImageForState: // 返回某个按钮状态下使用的背景图片.
– imageForState: // 返回某个状态下的按钮图片.
– setBackgroundImage:forState: // 设置特定状态的背景图片,默认都是normal
– setImage:forState: // 设置特定状态的图片,默认都是normal
4.设置button内部子控件的layout
contentEdgeInsets
titleEdgeInsets
imageEdgeInsets
5. rect
– backgroundRectForBounds: // 返回背景绘制区域.
– contentRectForBounds: // 返回内容绘制区域.内容区域是显示图片和标题及他们特定对齐缩放等的范围.
– titleRectForContentRect: // 返回标题的绘制区域.
– imageRectForContentRect: // 返回图片的绘制区域.
button的基本使用
_button = [UIButtonbuttonWithType:0];
_button.frame = CGRectMake(0, 0, 200, 200);
_button.center = self.view.center;
[_buttonsetBackgroundColor:[UIColorblueColor]];
[_buttonsetImage:[UIImageimageNamed:@"1111.jpeg"] forState:UIControlStateNormal];
[_buttonsetTitle:@"测试专用"forState:UIControlStateNormal];
[self.viewaddSubview:_button];
[_buttonsetExclusiveTouch:YES]; //禁止多个button同时点击
//设置圆角
[_button.layersetMasksToBounds:YES];
[_button.layersetCornerRadius:_button.bounds.size.width/2];
[_button addTarget:selfaction:@selector(buttonClick:) forControlEvents:UIControlEventTouchUpInside];
[selfajustTitleAndImageLocation];
// Do any additional setup after loadingthe view, typically from a nib.
}
- (void) ajustTitleAndImageLocation
{
// UIEdgeInsets 属性
// UIEdgeInsets
// {
// CGFloat top, left, bottom, right //逆时钟
// }UIEdgeInsets
// 创建UIEfgeInsets方法 UIEdgeInsetsMake 所有结构体创建方法都是这样
CGSize size = _button.bounds.size;
CGSize size_image = [_button imageView].bounds.size;
CGSize size_title = [_button titleLabel].bounds.size;
//关于button中的这三个属性 ContentEdgeInsets、titleEdgeInsets、imageEdgeInsets
// [_buttonsetContentVerticalAlignment:UIControlContentVerticalAlignmentCenter];
_button.imageEdgeInsets = UIEdgeInsetsMake(0,(size.width-size_image.width)/2,100,0);
_button.titleEdgeInsets = UIEdgeInsetsMake(size_image.height,-size_image.width-28, 0, 0);
}
- (void) buttonClick:(UIButton*) sender
{
NSLog(@"%@", [sender currentTitle]);
}
- UIButton
- UIButton
- UIButton
- uibutton
- UIButton
- UIButton
- UIButton
- UIButton
- UIButton
- UIButton
- UIBUTTON
- UIButton
- UIButton
- UIButton
- UIBUTTON
- UIButton
- UIButton
- UIButton
- 10023---JavaScript--DOM事件
- JVM内存静态与动态分配
- TLD(Tracking-Learning-Detection)学习与源码理解之(四)
- Mac OS X各版本的历史费用和升级关系
- Socket、Tcp、Udp、Http 的认识及区别
- UIButton
- IOS8 keyboardWillShow 在UIKeyboardWillShowNotification 调用两次 问题解决
- ListView+EditText 焦点问题
- 如何获取国际标准时间
- IOS开发 小技能
- TLD(Tracking-Learning-Detection)学习与源码理解之(五)
- AngularJS 02
- 少说空话多做事
- VC中定时器的使用