iOS开发小牛的第一篇日志
前言: 人生的第一篇博客,也不知道写点什么,说实话,只是想把我自己学习开发这一路上的点点滴滴都记录下来,或许做不到一天一篇博客,但是希望可以每天进步一点吧。
第一篇博客,我想把我整理的一些最简单的控件都写进来,慢慢的让知识一点一点积累起来,加油! 我可以的!
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开发小牛的第一篇日志相关推荐
- IOS开发高手课第一篇 构建自己的IOS开发知识体系
开篇词 | IOS开发锚定一个点,然后在这个点上深耕 你好,我是戴铭,欢迎你加入我的 iOS 开发专栏. 说起 iOS 开发,自然是绕不开 iPhone 和 App Store 这两个词.多少年过去了 ...
- 微信公众号开发入门教程第一篇
微信公众号开发入门教程第一篇 关键字:微信公众平台开发 作者:方倍工作室 在这篇微信公众平台开发教程中,我们假定你已经有了PHP语言程序.MySQL数据库.计算机网络通讯.及HTTP/XML/CSS/ ...
- IOS开发高手课第二篇 App 启动速度怎么做优化与监控?
02 | App 启动速度怎么做优化与监控? 我已经在专栏的第一篇文章中,和你梳理了一份 iOS 开发的知识体系框架图.今天,我们就正式从基础出发,开始自己的 iOS 开发知识体系构建之路吧.接下来, ...
- 芒果iOS开发UI课程第一节UIWindow
主要内容: 1.iOS介绍 2.iOS主要做什么 3.UI介绍 4.UIWindow 这是UI阶段的第一节课主要介绍iOS系统,以及相关的一些知识.还有做为iOS开发者我们应该如何创建我们的第一个UI ...
- Python全栈开发记录_第一篇(循环练习及杂碎的知识点)
Python全栈开发记录只为记录全栈开发学习过程中一些难和重要的知识点,还有问题及课后题目,以供自己和他人共同查看.(该篇代码行数大约:300行) 知识点1:优先级:not>and 短路原则:a ...
- IOS开发UISearchBar失去第一响应者身份后,取消按钮不执行点击事件的问题
在iOS开发中,使用UISearchBar的时候,当搜索框失去焦点的时候,取消按钮是默认不能点击的,如图按钮的颜色是灰色的: 这是因为此时取消按钮的enabled属性被设置为NO了,那么当我们需 ...
- 手机网站开发(WAP网站)第一篇
现在的互联网,可以说是名副其实的移动互联网.大家不仅可以利用无线网卡随处随地上网,还可以直接利用手机浏览网页.下载文件,而且现在的无线运营商也正在大力发展无线网络.扩展手机上网带宽. 于是,手机 ...
- 这个是我的第一篇日志
日志内容是来自 windows live Writer 发布的, 试一试效果! /** * @name: is_empty * @description: 检测变量是否为空 * @param: mix ...
- 这几天来的第一篇日志
这几天总算是休息够了,开始写MSN Space了.打算把上个月想写的东西今天一下子写了. 恰好遇到MSN Space大更新,名字都换了,叫Live Space.可能还有些不太习惯,不过过段时间 ...
最新文章
- Qt之两种初始化QListWidget的方法
- 计算机类|期刊】SCI期刊专刊截稿信息4条
- qgis oracle,用 QGIS 画矢量交通路线图
- 《Effective Java读书笔记》--通用程序设计
- SNS类游戏cache server设计浅析
- testng数据驱动_TestNG数据提供者
- python实现命令行工具jq的json路径过滤
- RestEasy传值方式
- sql优化工具explain的使用
- 修改PC端微信提示音
- vb webQQ登陆器
- meanshift算法通俗讲解
- python电话簿_python 联系簿
- 各省简称 拼音 缩写_中国省市县地区首字母缩写
- springboot大学生青年志愿者管理的设计与实现毕业设计源码101605
- MacBook m1 芯片快速下载 ndk 和环境配置,防止脱发
- mindspore 1.3.0版本GPU环境下源码编译前的准备工作——依赖环境的安装
- 批处理文件调用oracle实例
- [android] 手机卫士来电显示号码归属地
- Bert albert xlnet gtp