Object-C知识点 (二) 控件的实用属性
开发过程中的组件不常用但是很实用的属性!!!!!!
#pragma mark -- UIColor
colorWithPatternImage: 根据图片显示颜色,会将图片裁剪
#pragma mark--Button
//自适应 [self.button sizeToFit]; //禁止触摸事件的2种方式 //方式一: 会改变按钮状态,颜色会变灰 self.button.enabled = NO; //方式二: 保持按钮状态,颜色不会变 self.button.userInteractionEnabled = NO; // 按钮高亮的时候,不要去调整图片(不要调整图片为灰色) self.button.adjustsImageWhenHighlighted = NO; //当按钮不能点击的时候,不要调整为灰色 self.button.adjustsImageWhenDisabled = NO; //最彻底的解决办法(重写setHighlighted方法) - (void)setHighlighted:(BOOL)highlighted { } // titleEdgeInsets:只影响按钮内部的titleLabel button.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0); // imageEdgeInsets:只影响按钮内部的imageView button.imageEdgeInsets = UIEdgeInsetsMake(20, 0, 0, 50); // contentEdgeInsets:会影响按钮内部的所有内容(里面的imageView和titleLabel) // button.contentEdgeInsets = UIEdgeInsetsMake(10, 100, 0, 0); //需要设置按钮的image和backgroundImage,建议先把按钮类型改为custom,才能保证设置成功 // 避免多个按钮同时点击 app 启动方法中增加 // [[UIButton appearance] setExclusiveTouch:YES];
#pragma mark--text文本框
//计算内容需要的空间大小 CGRect rect = [@"abcdefg" boundingRectWithSize:CGSizeMake(bounds.size.width - 40, 100000)
options:NSStringDrawingUsesLineFragmentOrigin
attributes:
@{NSFontAttributeName:[UIFont systemFontOfSize:17]}
context:nil];
#pragma mark -- textView 文本框
selectedRange :
1.本来是用来控制textView的文字选中范围
2.如果selectedRange.length为0,selectedRange.location就是textView的光标位置
关于textView文字的字体
1.如果是普通文字(text),文字大小由textView.font控制
2.如果是属性文字(attributedText),文字大小不受textView.font控制,应该利用NSMutableAttributedString的
- (void)addAttribute:(NSString *)name value:(id)value range:(NSRange)range;方法设置字体
#pragma mark--UISlider 滑块
_slider = [[UISlider alloc] initWithFrame:CGRectMake(50, 180, self.view.bounds.size.width, 30)]; // 真实高度为会发生变化,界面不会变化,设置背景颜色查看 //滑块的颜色 _slider.thumbTintColor = [UIColor redColor]; //滑块左边的颜色 _slider.minimumTrackTintColor = [UIColor yellowColor]; //滑块右边的颜色 _slider.maximumTrackTintColor = [UIColor blueColor]; //ValueChanged: 当UISlider的值发生变化时调用. //TouchDown: 当UISlider被按下时调用. //TouchUpInside/TouchUpOutside: 松开时调用.
#pragma mark -- UIProgressView 进度条
self.progressView = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleDefault]; self.progressView.frame = CGRectMake(50, 130, 275, 20); //真实高度不会改变,界面不会变化 //设置progress的大小 0.0--1.0 默认是0.0 self.progressView.progress = 0.0;
#pragma mark--UIImagePickerController 图片选择器
// 设置编辑图像的属性 self.picker.allowsEditing = YES;
#pragma mark--UIScrollView 图片的滚动
[scrollView.panGestureRecognizer translationInView:scrollView.superview].x
< 0 向左滑 = 0 上下滑动 >0 向右滑动
更多内容--> 博客导航 每周一篇哟!!!
有任何关于iOS开发的问题!欢迎下方留言!!!或者邮件lieryangios@126.com 虽然我不一定能够解答出来,但是我会请教iOS开发高手!!!解答您的问题!!!