iOS开发小牛的第一篇日志

来源:互联网 发布:淘宝店铺海报尺寸多少 编辑:程序博客网 时间:2024/04/30 17:34

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

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

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:@"我菲~
0 0