前言: 人生的第一篇博客,也不知道写点什么,说实话,只是想把我自己学习开发这一路上的点点滴滴都记录下来,或许做不到一天一篇博客,但是希望可以每天进步一点吧。

第一篇博客,我想把我整理的一些最简单的控件都写进来,慢慢的让知识一点一点积累起来,加油! 我可以的!

UI控件

标签: iOS


UIView
UIimgView
UILabel
UIButton
UITextField
UISlider
UISwitch
UIAlert
UIAlertController
UIActionSheet
UIActivityIndicatorView
UISegmentedControl
UITimer
UIPickerView
NSDate
UIScrollView
UIPageControl
UITabelView
UITabelViewCell
NSURL
UITabBarController

视图控制器
UIViewController(第一个界面,控制每一个控件)
视图

UIView(控件)

self.uiview = [[UIView alloc]init];
self.uiview.frame = CGRectMake(100, 200, 50, 50);
self.uiview.backgroundColor = [UIColor greenColor];
[self.uiview.layer setCornerRadius:25];
[self.uiview.layer setBorderWidth:10];
[self.uiview.layer setBorderColor:[UIColor colorWithRed:200.0/250.0 green:200.0/250.0 blue:200.0/250.0 alpha:0.7f].CGColor];
[self.view addSubview:self.uiview];

UIimgView

- (void)createUIImage
{self.uiimageview = [[UIImageView alloc]init];self.uiimageview.frame = CGRectMake(50, 200, 250, 100);//    NSArray *images = [[NSArray alloc]initWithObjects:
//                       [UIImage imageNamed:@"cow"],
//                       [UIImage imageNamed:@"redbag_Img"],
//                       [UIImage imageNamed:@"smile"],
//                       [UIImage imageNamed:@"video_Img"], nil];
//    self.uiimageview.animationImages = images;      //图片数组
//    self.uiimageview.animationDuration = 4;  //设置图片存在时间
//    self.uiimageview.animationRepeatCount = 9999; //设置循环次数
//    [self.uiimageview startAnimating ]; //开始播放
//    - (void)startAnimating;
//    - (void)stopAnimating;
//    - (BOOL)isAnimating;//启动uiimage控件用户交互,允许控件响应用户手势self.uiimageview.userInteractionEnabled = YES;//设置点击手势//UITapGestureRecognizer *shouShi = [UITapGestureRecognizer alloc]initWithTarget:self action:@selector(/**点击之后设置点击方法*/)self.uiimageview.alpha = 1.0f; //UIImageView控件透明度[self.view addSubview:self.uiimageview];//    Ø image:访问或设置该控件显示的图片。
//
//    Ø highlightedImage:访问或设置该控件处于高亮状态时显示的图片。
//
//    除此之外,UIImageView还可以使用动画显示一组图片,使用UIImageView动画显示一组图片的属性和方法如下。
//
//    Ø animationImages:访问或者设置该UIImageView需要动画显示的多张图片。该属性的值是一个NSArray对象。
//
//    Ø highlightedAnimationImages:访问或者设置该UIImageView高亮状态下需要动画显示的多张图片。该属性的值是一个NSArray对象。
//
//    Ø animationDuration:访问或设置该UIImageView的动画持续时间。
//
//    Ø animationRepeatCount:访问或设置该UIImageView的动画重复次数。
//
//    Ø startAnimating:开始播放动画。
//
//    Ø stopAnimating:停止播放动画。
//
//    Ø isAnimating:该方法判断该UIImageView是否正在播放动画。//    UIView控件所支持的Mode属性可控制UIImageView所显示图片的缩放模式,Mode属性是一个列表框,该列表框支持如下列表项。
//
//    Ø Scale To Fill:不保持纵横比缩放图片,使图片完全适应该UIImageView控件。
//
//    Ø Aspect Fit:保持纵横比缩放图片,使图片的长边能完全显示出来。也就是说,可以完整地将图片显示出来。
//
//    Ø Aspect Fill:保持纵横比缩放图片,只保证图片的短边能完全显示出来。也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发生截取。
//
//    Ø Center:不缩放图片,只显示图片的中间区域。
//
//    Ø Top:不缩放图片,只显示图片的顶部区域。
//
//    Ø Bottom:不缩放图片,只显示图片的底部区域。
//
//    Ø Left:不缩放图片,只显示图片的左边区域。
//
//    Ø Right:不缩放图片,只显示图片的右边区域。
//
//    Ø Top Left:不缩放图片,只显示图片的左上边区域。
//
//    Ø Top Right:不缩放图片,只显示图片的右上边区域。
//
//    Ø Bottom Left:不缩放图片,只显示图片的左下边区域。
//
//    Ø Bottom Right:不缩放图片,只显示图片的右下边区域。

UILabel(文本)

    self.uilable = [[UILabel alloc]init];
//设置坐标
self.uilable.frame = CGRectMake(20, 40, 100, 50);
//设置文字信息
self.uilable.text = @"asdhasgj";
//设置文字颜色
self.uilable.textColor = [UIColor blackColor];
//设置文字对齐方式
self.uilable.textAlignment = NSTextAlignmentLeft;
//设置文字对齐方式设置文字大小    systemFontOfSize:系统默认字体,不加粗     boldSystemFontOfSize:系统默认字体,加粗
self.uilable.font = [UIFont systemFontOfSize:50];
//self.uilable.font = [UIFont boldSystemFontOfSize:30];
//背景颜色
self.uilable.backgroundColor = [UIColor greenColor];
//文字阴影
self.uilable.shadowColor = [UIColor redColor];
//文字阴影范围
//self.uilable.shadowOffset = CGSizeMake(5.0, 5.0);
//文字换行  0表示行数没有限制
self.uilable.numberOfLines = 1;
//文字超出lable时截取文字方法
//    self.uilable.lineBreakMode = NSLineBreakByCharWrapping; //保留整个字符串
//    self.uilable.lineBreakMode = NSLineBreakByWordWrapping; //以空格为界,保留整个单词
//    self.uilable.lineBreakMode = NSLineBreakByClipping; //画到边界为止
//    //省略开始,使用...代替      NSLineBreakByTruncatingMiddle:中间用...代替    NSLineBreakByTruncatingTail :尾部用....代替
//    self.uilable.lineBreakMode = NSLineBreakByTruncatingHead;//adjustsFontSizeToFitWidth:返回的是bool值,设置text字体是否要减小来适应lable的区域。只有当lable的numberOfLines=1的时候才有效,字体会一直减小到你设置的最小字体值。self.uilable.adjustsFontSizeToFitWidth = YES;self.uilable.highlighted = YES;self.uilable.highlightedTextColor = [UIColor orangeColor];[self.view addSubview:self.uilable];
}
//给lable文字添加下划线
- (void)crea
{self.uilable= [[UILabel alloc] initWithFrame:CGRectMake(0, 20, 320, 40)];NSMutableAttributedString *content = [[NSMutableAttributedString alloc] initWithString:@"这是一条下划线"];NSRange contentRange = {0, [content length]};[content addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInteger:NSUnderlineStyleSingle] range:contentRange];self.uilable.attributedText = content;self.uilable.textColor = [UIColor blueColor];[self.view addSubview:self.uilable];}

UILabel自适应文字高度换行:

如果任意行数,则设置
label.numberOfLines = 0;
或者设置指定行数
label.numberOfLines = 3;//假设3行
假设需要显示的内容为
NSString *str = @"xxxxxxxx";
label.text = str;
CGSize size = [self         sizeThatFits:CGSizeMake(label.frame.size.height, MAXFLOAT)];
CGRect frame = label.frame;
frame.size.height = size.height;
[label setFrame:frame];

这样,即实现了换行,有能自动适应label高度,使其能恰好显示出str。

UIButton(按钮)

self.uibutton = [UIButton buttonWithType: UIButtonTypeCustom];
self.uibutton.frame = CGRectMake(50, 100, 100, 50);
//常态下状态
[self.uibutton setTitle:@"点击" forState:UIControlStateNormal];
//点击下状态
[self.uibutton setTitle:@"真点啊" forState:UIControlStateHighlighted];
//title常规颜色
[self.uibutton setTitleColor:[UIColor blackColor] forState:UIControlStateNormal]
//标题点击颜色
[self.uibutton setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];
//背景色
self.uibutton.backgroundColor = [UIColor blueColor];
//标题字体大小
self.uibutton.titleLabel.font = [UIFont systemFontOfSize:20];
//出发点击事件
[self.uibutton addTarget:self action:@selector(createUiview) forControlEvents:UIControlEventTouchUpInside];
//button加载图片
[self.uibutton setImage:[UIImage imageNamed:@"图片"] forState:UIControlStateNormal];//隐藏BIButton
//  self.uibutton.hidden=YES;//此时按钮被隐藏self.uibutton.hidden=NO;//此时按钮被显示在视图中//设置UIButton的标题对齐方式
//    [self.uibutton setContentHorizontalAlignment:UIControlContentHorizontalAlignmentLeft];//左对齐
//    [self.uibutton setContentHorizontalAlignment:UIControlContentHorizontalAlignmentRight];//右对齐
//    [self.uibutton setContentHorizontalAlignment:UIControlContentHorizontalAlignmentCenter];//居中对齐
//    [self.uibutton setContentHorizontalAlignment:UIControlContentHorizontalAlignmentFill];//填充对齐[self.view addSubview:self.uibutton];//UIButton的各种状态
//正常状态 UIControlStateNormal;
//高亮状态 UIControlStateHighlighted;
//禁用状态UIControlStateDisabled;
//选中状态 UIControlStateSelected;
//代理状态 UIControlStateApplication;
//保留状态 UIControlStateReserved;//iOS之UIButton按钮的常用属性方法
//UIButton *button1 = [UIButtonbuttonWithType:UIButtonTypeRoundedRect];//创建圆角按钮
//    能够定义的button类型有以下6种,
//    typedef enum {
//        UIButtonTypeCustom = 0,          自定义风格
//        UIButtonTypeRoundedRect,         圆角矩形
//        UIButtonTypeDetailDisclosure,    蓝色小箭头按钮,主要做详细说明用
//        UIButtonTypeInfoLight,           亮色感叹号
//        UIButtonTypeInfoDark,            暗色感叹号
//        UIButtonTypeContactAdd,          十字加号按钮
//    } UIButtonType//默认情况下,当按钮高亮的情况下,图像的颜色会被画深一点,如果这下面的这个属性设置为no,//那么可以去掉这个功能
//self.uibutton.adjustsImageWhenHighlighted = NO;
/*跟上面的情况一样,默认情况下,当按钮禁用的时候,图像会被画得深一点,设置NO可以取消设置*/
//self.uibutton.adjustsImageWhenDisabled = NO;
/* 下面的这个属性设置为yes的状态下,按钮按下会发光*/
//self.uibutton.showsTouchWhenHighlighted = YES;

UITextField(输入文本框)

UITextField的用法有很多,这里整理了一大部分,都是一些能用到的,剩下的等遇到在整理,以下是代码:

self .uitextfield = [[UITextField alloc]init];
self.uitextfield.frame = CGRectMake(50, 200, 300, 200);//设置UITextField的文字颜色
self.uitextfield.textColor =[UIColor redColor];//设置UITextField的文本框背景颜色
self.uitextfield.backgroundColor=[UIColor grayColor];//设置UITextField的边框的风格
self.uitextfield.borderStyle=UITextBorderStyleRoundedRect;//设置UITextField的代理
//tf.delegate=self;//设置UITextField的文字对齐方式
//    self.uitextfield.textAlignment = NSTextAlignmentCenter;    //居中对齐
//    self.uitextfield.textAlignment = NSTextAlignmentLeft;      //左对齐
//    self.uitextfield.textAlignment = NSTextAlignmentRight;     //右对齐
//    self.uitextfield.textAlignment = NSTextAlignmentJustified; //填充对齐//设置UITextField的文字大小和字体
self.uitextfield.font=[UIFont fontWithName:@"Times New Roman" size:20];//设置UITextField自适应文本框大小
self.uitextfield.adjustsFontSizeToFitWidth=YES;  // NO   自适应宽度//设置UITextField是否拥有一键清除的功能
self.uitextfield.clearsOnBeginEditing=YES;     // NO//设置一键清除按钮是否出现
self.uitextfield.clearButtonMode = UITextFieldViewModeAlways;      //UITextFieldViewModeNever;//设置UITextField的水印
self.uitextfield.placeholder=@"输入密码";//当UITextField的样式为UITextBorderStyleNone的时候,修改背景图片
self.uitextfield.background=[UIImage imageNamed:@"xx.png"];//设置UITextField的左边view
//    self.uitextfield.leftView = self.uibutton;//设置UITextField的左边view出现模式
//    self.uitextfield.leftViewMode=UITextFieldViewModeAlways;//设置UITextField的右边view
//    self.uitextfield.rightView= self.uibutton;//设置UITextField的右边view出现模式
//    self.uitextfield.rightViewMode=UITextFieldViewModeAlways;//设置UITextField的字的摆设方式
//    self.uitextfield.contentVerticalAlignment = UIControlContentHorizontalAlignmentCenter;
[self.view addSubview:self.uitextfield];

以上都是小新辛苦整理的,非常的全!让我要来了~~ 要好好看啊!
[比较详细得UITextField的用法][1]
[如何只出现光标,不出现键盘][2]

UISlider(滑动进度条)

代码区

self.sliderOne = [[UISlider alloc]initWithFrame:CGRectMake(0, 100, 300, 20)];
//点语法出来的都是属性
self.sliderOne.minimumValue = 0;
self.sliderOne.maximumValue = 3;
//起始坐标
self.sliderOne.value = 0;
//continuous(BOOL值 取NO时,当Slider结束编辑改变Slider的值)(取YES时,实时改变Slider的值)
self.sliderOne.continuous = YES;
self.sliderOne.backgroundColor = [UIColor clearColor];
self.sliderOne.minimumTrackTintColor = [UIColor redColor];
self.sliderOne.maximumTrackTintColor = [UIColor greenColor];
//修改滑块图片
[self.sliderOne setThumbImage:[UIImage imageNamed:[json.sliderNameArr objectAtIndex:0]] forState:UIControlStateHighlighted];
[self.sliderOne setThumbImage:[UIImage imageNamed:[json.sliderNameArr objectAtIndex:1]] forState:UIControlStateNormal];
//修改进度条图片
[self.sliderOne setMinimumTrackImage:[UIImage imageNamed:[json.sliderNameArrobjectAtIndex:2]] forState:UIControlStateNormal];
[self.sliderOne setMaximumTrackImage:[UIImage imageNamed:[json.sliderNameArrobjectAtIndex:3]] forState:UIControlStateNormal];
[self.sliderOne addTarget:selfaction:@selector(sliderOneEvent)forControlEvents:UIControlEventValueChanged];
[self.view addSubview:self.sliderOne];

self.sliderOne.value为按钮起始的位置;
self.sliderOne.minimumValue为滑块的最小值;
self.sliderOne.maximumValue为滑块的最大值;
为sliderOne添加完点击方法后,可以在方法中通过value的值来做出改变;
[自定义Slider的样式和花滑块][3]
[UISlider的详细使用方法][4]

UISwitch(开关)

代码区

/**开关!*/
_sslSwitch = [[UISwitch alloc]init];
//开关的大小固定 51,31
//早期的switch大小 71 ,38
_sslSwitch.frame = CGRectMake(20, 100, 200, 30);
//第一次出现开关时的状态
_sslSwitch.on = NO;
//设置开关的状态和是否有动画
[_sslSwitch setOn:NO animated:YES];
[_sslSwitch addTarget:self action:@selector(sslSwitchEvent) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:_sslSwitch];- (void)sslSwitchEvent
{    _sslAlert = [[UIAlertView alloc]initWithTitle:@"❤️注 意❤️" message:@"请选择你的另一半!" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"我菲~

iOS开发小牛的第一篇日志相关推荐

  1. IOS开发高手课第一篇 构建自己的IOS开发知识体系

    开篇词 | IOS开发锚定一个点,然后在这个点上深耕 你好,我是戴铭,欢迎你加入我的 iOS 开发专栏. 说起 iOS 开发,自然是绕不开 iPhone 和 App Store 这两个词.多少年过去了 ...

  2. 微信公众号开发入门教程第一篇

    微信公众号开发入门教程第一篇 关键字:微信公众平台开发 作者:方倍工作室 在这篇微信公众平台开发教程中,我们假定你已经有了PHP语言程序.MySQL数据库.计算机网络通讯.及HTTP/XML/CSS/ ...

  3. IOS开发高手课第二篇 App 启动速度怎么做优化与监控?

    02 | App 启动速度怎么做优化与监控? 我已经在专栏的第一篇文章中,和你梳理了一份 iOS 开发的知识体系框架图.今天,我们就正式从基础出发,开始自己的 iOS 开发知识体系构建之路吧.接下来, ...

  4. 芒果iOS开发UI课程第一节UIWindow

    主要内容: 1.iOS介绍 2.iOS主要做什么 3.UI介绍 4.UIWindow 这是UI阶段的第一节课主要介绍iOS系统,以及相关的一些知识.还有做为iOS开发者我们应该如何创建我们的第一个UI ...

  5. Python全栈开发记录_第一篇(循环练习及杂碎的知识点)

    Python全栈开发记录只为记录全栈开发学习过程中一些难和重要的知识点,还有问题及课后题目,以供自己和他人共同查看.(该篇代码行数大约:300行) 知识点1:优先级:not>and 短路原则:a ...

  6. IOS开发UISearchBar失去第一响应者身份后,取消按钮不执行点击事件的问题

    在iOS开发中,使用UISearchBar的时候,当搜索框失去焦点的时候,取消按钮是默认不能点击的,如图按钮的颜色是灰色的:    这是因为此时取消按钮的enabled属性被设置为NO了,那么当我们需 ...

  7. 手机网站开发(WAP网站)第一篇

    现在的互联网,可以说是名副其实的移动互联网.大家不仅可以利用无线网卡随处随地上网,还可以直接利用手机浏览网页.下载文件,而且现在的无线运营商也正在大力发展无线网络.扩展手机上网带宽.    于是,手机 ...

  8. 这个是我的第一篇日志

    日志内容是来自 windows live Writer 发布的, 试一试效果! /** * @name: is_empty * @description: 检测变量是否为空 * @param: mix ...

  9. 这几天来的第一篇日志

    这几天总算是休息够了,开始写MSN Space了.打算把上个月想写的东西今天一下子写了.     恰好遇到MSN Space大更新,名字都换了,叫Live Space.可能还有些不太习惯,不过过段时间 ...

最新文章

  1. Qt之两种初始化QListWidget的方法
  2. 计算机类|期刊】SCI期刊专刊截稿信息4条
  3. qgis oracle,用 QGIS 画矢量交通路线图
  4. 《Effective Java读书笔记》--通用程序设计
  5. SNS类游戏cache server设计浅析
  6. testng数据驱动_TestNG数据提供者
  7. python实现命令行工具jq的json路径过滤
  8. RestEasy传值方式
  9. sql优化工具explain的使用
  10. 修改PC端微信提示音
  11. vb webQQ登陆器
  12. meanshift算法通俗讲解
  13. python电话簿_python 联系簿
  14. 各省简称 拼音 缩写_中国省市县地区首字母缩写
  15. springboot大学生青年志愿者管理的设计与实现毕业设计源码101605
  16. MacBook m1 芯片快速下载 ndk 和环境配置,防止脱发
  17. mindspore 1.3.0版本GPU环境下源码编译前的准备工作——依赖环境的安装
  18. 批处理文件调用oracle实例
  19. [android] 手机卫士来电显示号码归属地
  20. Bert albert xlnet gtp

热门文章

  1. 一篇文章搞清楚Java中CompletableFuture的使用
  2. html覆盖标签,覆盖内部html标签内容的CSS
  3. wps将工作表调整为一页的操作
  4. 用python写一个alfred workflow百度翻译插件
  5. 我市智慧城市建设迈入快车道
  6. 苹果想颠覆广告业,Facebook带头开撕
  7. 四种常用的命名规则:帕斯卡命名法、驼峰命名法、下划线命名法、匈牙利命名法
  8. 项目管理之高效会议:项目中要开好哪些会?
  9. android飞机大战功能,Android飞机大战
  10. 个位数,十位数,百位数等程序常用英文变量名该怎么写?