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


#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. JEESZ-Redis分布式缓存安装和使用

    独立缓存服务器: Linux CentOS Redis 版本: 3.0下面我们针对于Redis安装做下详细的记录:编译和安装所需的包:# yum install gcc tcl创建安装目录:# mkd ...

  2. C# 时间格式总结

    C#时间/日期格式大全 C#时间/日期格式大全,C#时间/日期函数大全 有时候我们要对时间进行转换,达到不同的显示效果 默认格式为:2005-6-6 14:33:34 如果要换成成200506,06- ...

  3. Spring入门导读——IoC和AOP

    和MyBatis系列不同的是,在正式开始Spring入门时,我们先来了解两个关于Spring核心的概念,IoC(Inverse of Control)控制反转和AOP()面向切面编程. 1.IoC(I ...

  4. 基于Babylonjs自制WebGL3D模型编辑器

    一.总述 当代WebGL编程所使用的3D模型大多是从3DsMax模型或Blender模型转化而来,这种工作模式比较适合3D设计师和3D程序员分工配合的场景.但对于单兵作战的WebGL爱好者来讲这种模式 ...

  5. struts2.1.6教程十一、注解配置

    在此先略去注解配置的实例,具体可以参看官方提供的文档.其实在熟悉struts及相关的一些内容后,再来看文档是比较容易理解得.只是要注意使用注解Annotition时: (1)要多导入一个jar包:st ...

  6. Angular Route导航

    我们用Angular cli创建带有路由的新项目 ng new router --routing Angular Routes API文档 Angular的文档中有详细的解释: 1)https://a ...

  7. laravel实现多数据库连接配置

    只需三步,便可实现. 第一步,在.env文件中配置 DB_HOST=localhost DB_DATABASE=test DB_USERNAME=root DB_PASSWORD=root DB_HO ...

  8. TWaver 2D+GIS+3D的试用和在线Demo

    TWaver 2D for HTML5试用下载: http://download.servasoft.com/dl/twaver/sssyuwyeriUR/k/twaver-html5-5.4.7.z ...

  9. 项目管理之 SVN 管理软件 CornerStone for Mac

    常用的项目管理有 Git 和 SVN.之前公司一直使用的是 Git,使用的是 SourceTree 客户端,据说 Git 比 SVN 要好,只能说各有特点吧,有兴趣的可以查看下两个的区别. 下面是学习 ...

  10. 如何在Java中调用Python代码

    有时候,我们会碰到这样的问题:与A同学合作写代码,A同学只会写Python,而不会Java, 而你只会写Java并不擅长Python,并且发现难以用Java来重写对方的代码,这时,就不得不想方设法“调 ...