Object-C知识点 (二) 控件的实用属性

摘要:
开发过程中组件的异常但非常有用的属性#Pragmamark--UIColorcolorWithPatternImage:根据图像的颜色,图像将被裁剪#Pragmamark--Button//adaptive[self.buttonsizeToFit]//禁用触摸事件的两种方法//方法1:按钮状态将被更改,颜色将变为灰色。按钮enabled=NO//方法2:保持按钮状态,颜色不

开发过程中的组件不常用但是很实用的属性!!!!!!

#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开发高手!!!解答您的问题!!!

免责声明:文章转载自《Object-C知识点 (二) 控件的实用属性》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇VS调试技巧sprignboot 中thymeleaf和freemarker 都存在时,默认选择哪个下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Android学习笔记(一)之仿正点闹钟时间齿轮滑动的效果

看到正点闹钟上的设置时间的滑动效果非常好看,自己就想做一个那样的,在网上就开始搜资料了,看到网上有的齿轮效果的代码非常多,也非常难懂,我就决定自己研究一下,现在我就把我的研究成果分享给大家。我研究的这个效果出来了,而且代码也非常简单,通俗易懂。效果图如下: 首先是MainActivity的布局文件,这个布局文件非常简单,就是一个Button:activ...

004 DOM01

一:说明 1.Js的三个部分   ECMAScripts标准:JS的基本语法   DOM:文档对象模型,操作页面的元素的   BOM:浏览器对象模型,操作浏览器 2.术语   文档:一个页面就是一个文档   元素:页面中的所有标签都是元素,元素可以看成对象   节点:页面中的所有内容都是节点   属性:标签的属性 二:初次体验DOM 1.程序 1 <...

Android学习之五:android一些基本控件

每一个GUI开发工具都会提供一些基本的控件,例如Label和Button 等,下面我们来看下Android的一些基本控件。 Label:就是只用来显示些文本信息,而且不需要编辑的控件,在Android中是使用TextView控件的。我们来看一下在xml文件下面怎么定义该控件,我们来看以下的xml代码: <TextView android:lay...

android PopupWindow实现从底部弹出或滑出选择菜单或窗口

本实例弹出窗口主要是继承PopupWindow类来实现的弹出窗体,布局可以根据自己定义设计。弹出效果主要使用了translate和alpha样式实现,具体实习如下: 第一步:设计弹出窗口xml: Xml代码   <?xml version="1.0" encoding="utf-8"?>   <RelativeLayout   ...

修改bootstrap-table中的分页样式

使用bootstrap-table时,使用$("")选择器没办法选中下方的分页button按钮,可能跟它是动态生成的有关吧。 最终找到与之对应的js(bootstrap-table.js中搜索了data-toggle),将class类更换成自己定义的一个class,完成了期望的效果 var pageNumber = [Utils.sprintf('<...

Vue可伸缩工具栏

<template> <div class="main"> <div class="toolbar" :class="{ toolbar_show: !openStatus }"> <el-button type="primary" size="small">点击</el-button>...