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


#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(, , , ); // imageEdgeInsets:只影响按钮内部的imageView
button.imageEdgeInsets = UIEdgeInsetsMake(, , , ); // 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 - , )
                options:NSStringDrawingUsesLineFragmentOrigin
                attributes:
                @{NSFontAttributeName:[UIFont systemFontOfSize:]}
                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(, , self.view.bounds.size.width, )];
// 真实高度为会发生变化,界面不会变化,设置背景颜色查看
//滑块的颜色
_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(, , , );
//真实高度不会改变,界面不会变化 //设置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知识点 (二) 控件的实用属性的更多相关文章

  1. Duilib源码分析(二)控件构造器—CDialogBuilder

    上一节了解了大体流程,但是界面控件元素是如何被加载.解析.构建.管理.控件消息如何处理的呢?接下来我们将结合控件构造器进行分析: CDialogBuilder:控件构造器,主要用以解析xml配置文件并 ...

  2. Victor 串口 VCL 控件 - 简单实用, 功能强大的 C++ Builder 串口控件!

    源:Victor 串口 VCL 控件 - 简单实用, 功能强大的 C++ Builder 串口控件! 2014年02月06日发布控件的重要更新版本: Victor 串口控件 1.5.0.2 版本 (包 ...

  3. Binding(二):控件关联和代码提升

    上节我们讲到,使用Binding,我们可以关联后台代码中的属性,在某些情况下,我们可能需要将两个控件关联起来,借助Binding,我们也可以轻松的实现. 关联控件 设想这样一个场景,界面中有个Chec ...

  4. 重新想象 Windows 8 Store Apps (16) - 控件基础: 依赖属性, 附加属性, 控件的继承关系, 路由事件和命中测试

    原文:重新想象 Windows 8 Store Apps (16) - 控件基础: 依赖属性, 附加属性, 控件的继承关系, 路由事件和命中测试 [源码下载] 重新想象 Windows 8 Store ...

  5. C# winform项目中ListView控件使用CheckBoxes属性实现单选功能

    C# winform项目中ListView控件使用CheckBoxes属性实现单选功能 在做项目时需要使用ListView控件的CheckBoxes属性显示,还要在点击行时自动选中CheckBoxes ...

  6. 【转】WPF中PasswordBox控件的Password属性的数据绑定

    英文原文:http://www.wpftutorial.net/PasswordBox.html 中文原文:http://blog.csdn.net/oyi319/article/details/65 ...

  7. TextBox控件的DataBindings属性

    DataBindings属性是很多控件都有的属性,作用有2方面.一方面是用于与数据库的数据进行绑定,进行数据显示.另一方面用于与控件或类的对象进行数据绑定.这里主要关注后者.主要用法是将某个对象的某个 ...

  8. C#控件方法及属性大全,望补充

    C#控件及常用设计整理 1.窗体 常用属性 (1)Name属性:用来获取或设置窗体的名称,在应用程序中可通过Name属性来引用窗体. (2) WindowState属性: 用来获取或设置窗体的窗口状态 ...

  9. 关于如何在 Unity 的 UI 菜单中默认创建出的控件 Raycast Target 属性默认为 false

    关于如何在 Unity 的 UI 菜单中默认创建出的控件 Raycast Target 属性默认为 false 我们在 Unity 中通过 UI 菜单创建的各种控件,比如 Text, Image 等, ...

随机推荐

  1. Java中线程的使用 (2)-多线程、线程优先级、线程睡眠、让步、阻塞

    Java中线程的使用 (2)-多线程.线程优先级.线程睡眠.让步.阻塞 (一)多线程使用方法 说明:创建每个新的线程,一定要记得启动每个新的线程(调用.start()方法) class Xc3 ext ...

  2. click和blur事件冲突解决方案

    场景:例如做一个模仿百度搜索的搜索框,输入文字下面会有匹配项,当点击下拉项中的值时,就将值添加到搜索框中同时隐藏下拉框,点击其他地方就直接隐藏下拉框,这时所需要的事件分别为 下拉框事件onclick, ...

  3. kafka 0.10.2 部署失败后,重新部署

    删除kafka各个节点log目录 删除zookeeper上kafka相关的目录 [root@m1 ~]# zkCli.sh Connecting to localhost: -- ::, [myid: ...

  4. win2012中添加架构FTP服务器

    打开IIS管理器(win+R输入inetmgr后回车或通过 添加FTP站点

  5. SpringMVC——请求映射

    SpringMVC中,如何处理请求是很重要的任务.请求映射都会使用@RequestMapping标注.其中,类上的标注相当于一个前缀,表示该处理器是处理同一类请求:方法上的标注则更加细化.如,类的标注 ...

  6. TreeSet集合排序方式二:定制排序Comparator

    Comparator有两种实现方式: 1,匿名内部类 2,创建一个类用于实现Comparator,该类创建的对象就是比较器 Person类 public class Person implements ...

  7. hibernate操作步骤(代码部分)

    1.加载hibernate的核心配置文件 2.创建SessionFactory对象 3.使用SessionFactory创建Session对象 4.开启事务(手动开启) 5.写具体逻辑crud,增删改 ...

  8. Spring学习(12)--- @Autowired与@Resource 对比

    Spring不但支持自己定义的@Autowired注解,还支持由JSR-250规范定义的几个注解,如:@Resource. @PostConstruct及@PreDestroy. 1. @Autowi ...

  9. Bash中单引号和双引号的区别

    单引号和双引号的区别 单引号:必须成对使用,它可以保护所有的字符不被翻译.如变量$1,和奇数个单引号的作用相同,偶数个单引号=1个双引号双引号:必须成对出现,它可以保护一些元字符不被翻译,但允许变量和 ...

  10. 学习maven的各种问题

    1. The container 'Maven Dependencies' references non existing library 解决方法,将eclipse中maven插件中“resolve ...