ios笔记(二)控件属性


1.设置UIButton的按钮内容
//设置自定义的按钮
//UIButton *button1=[UIButton buttonWithType:UIButtonTypeCustom];
//设置一个圆角的按钮
UIButton *button1=[UIButton buttonWithType:UIButtonTypeRoundedRect];

button1.frame=CGRectMake(80,250,250, 30);//按钮的位置坐标
[button1 setTitle:@"Button1" forState:UIControlStateNormal];//普通状态按钮标题
[button1 setTitle:@"高亮状态" forState:UIControlStateHighlighted];//高亮状态的按钮标题
//高亮状态光晕效果
[button1 setShowsTouchWhenHighlighted:YES];
//设置标题的颜色
[button1 setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
//设置标题的字体大小
[button1.titleLabel setFont:[UIFont boldSystemFontOfSize:20]];
//设置背景颜色
[button1 setBackgroundColor:[UIColor blueColor]];
//图片被拉伸式地设置背景图片
[button1 setBackgroundImage:[UIImage imageNamed:@"1.jpg"] forState:UIControlStateNormal];
//图片保持原来大小地设置背景图片
//[button1 setImage:[UIImage imageNamed:@"1.jpg"] forState:UIControlStateNormal];
[[button1 titleLabel]setShadowColor:[UIColor blackColor]];
[[button1 titleLabel]setShadowOffset:CGSizeMake(-0.5, -0.5)];
button1.contentHorizontalAlignment=UIControlContentHorizontalAlignmentLeft;
[self.view addSubview:button1];
//监听事件
[button1 addTarget:self action:@selector(Click_Button) forControlEvents:UIControlEventTouchUpInside];
}
-(void)Click_Button
{
NSLog(@"已点击...");

}
2.设置UIImageView的图片内容
   1.实例化控件
     UIImageView *img = [[UIImageView alloc] init];
     //简写UIImageView *img = [UIImageView new];
     2.设置控件内容,后面的background是图片名称,只需拖进项目的Assets文件即可
     img.image = [UIImage imageNamed:@"background"];
     3.设置控件的frame(坐标)
     img.frame = CGRectMake(0, 0, 100, 100);
     4.添加在父控件
     [self.view addSubView:img];
2.3 使用transform属性

imageView.transform = CGAffineTransformMakeTranslation(CGFloat dx, CGFloat dy);
 其中dx与dy表示想要往x或者y方向移动多少,而不是移动到多少。

3、旋转图像

imageView.transform = CGAffineTransformMakeRotation(CGFloat angle);
  要注意它是按照顺时针方向旋转的,而且旋转中心是原始ImageView的中心,也就是center属性表示的位置。

  这个方法的参数angle的单位是弧度,而不是我们最常用的度数,所以可以写一个宏定义:

 #define degreesToRadians(x) (M_PI*(x)/180.0)

4、缩放图像

 还是使用transform属性:

imageView.transform = CGAffineTransformMakeScale(CGFloat scale_w, CGFloat scale_h);
5、为图片添加单击事件:
imageView.userInteractionEnabled = YES;//使控件实现交互
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapImageView:)];
[imageView addGestureRecognizer:singleTap];
一定要先将userInteractionEnabled置为YES,这样才能响应单击事件

6.其他设置
imageView.hidden = YES或者NO;    // 隐藏或者显示图片
imageView.alpha = (CGFloat) al;    // 设置透明度
imageView.highlightedImage = (UIImage *)hightlightedImage;     // 设置高亮时显示的图片
imageView.image = (UIImage *)image;    // 设置正常显示的图片
[imageView sizeToFit];    // 将图片尺寸调整为与内容图片相同

3.设置UILabel的属性内容
设置label的标记(tag)
label.tag =101;
设置label的文本内容
label.text =@"abcd"
设置label的文字类型与大小
label.font = [UIFont systemFontOfSize:12];//采用系统默认文字设置大小
label.font = [UIFont fontWithName:@"Arial" size:30];//设置文字类型与大小
设置label的文字颜色
label.textColor = [UIColor lightGrayColor];//其中textColor要用UIColor类型
设置文本的对齐方式
label.textAlignment = NSTextAlignmentLeft;
其中textAlignment有三种设置方式:NSTextAlignmentLeft为向左对齐,NSTextAlignmentCenter为居中对齐,NSTextAlignmentRight为向右对齐
如果有一些文章介绍时用的是UITextAlignmentCenter/UITextAlignmentLeft/UITextAlignmentRight,那是iOS6以前的用法,iOS6的最新用法已改
当文本内容很多,label无法全部显示时label会将文本内容以省略号的方式代替,下面说一下label文本省略方式的设置
label.lineBreakMode =NSLineBreakByCharWrapping;//其中lineBreakMode可选值为
linBreakMode enum{
NSLineBreakByWordWrapping = 0,//保留整个单词,以空格为边界
   NSLineBreakByCharWrapping,//保留整个字符
   NSLineBreakByClipping,//以边界为止
   NSLineBreakByTruncatingHead,//省略开头,以省略号代替
   NSLineBreakByTruncatingTail,//省略结尾,以省略号代替
   NSLineBreakByTruncatingMiddle//省略中间,以省略号代替
   }
设置文本的行数
label.numberOfLines = 0;//行数设置为1,不设置时系统会默认行数为1,设置为0时,表示自动换行,但需要给定控件宽度
设置控件自适应内容的大小
[label sizeToFit];
设置label的边框粗细与颜色,设置前要在相应文件中加入#import<QuartzCore/QuartzCore.h>
label.layer.borderColor = [UIColor lightGrayColor].CGColor;//边框颜色,要为CGColor
label.layer.borderWidth = 1;//边框宽度
设置label的背景颜色
label.backgroundColor =[UIColor yellowColor];
设置背景图可以把一张大小与label一样的图放在label的后面一层,然后把label的背景设置为透明,这样实现label有背景
UILabel * label = [[UILabel alloc] initWithFrame:CGRectMake(50, 50, 200, 400)];
UIImageView *imageView =[[UIImageView alloc]init];
imageView.frame =CGRectMake(50, 50, 200, 400);
UIImage *image=[UIImage imageNamed:@"1.jpg"];
imageView.image =image;//imageView会根据自身大小改变添加的图片的大小所以不需要额外设置image
label.backgroundColor = [UIColor clearColor];
label.text =@"hello world";
label.font = [UIFont systemFontOfSize:30];
label.textColor = [UIColor yellowColor];
[self.view addSubview:imageView];//添加的顺序不能错,否则图片会覆盖label
[self.view addSubview:label];
设置文本阴影
label.shadowColor =[UIColor grayColor];
设置阴影大小
label.shadowOffset = CGSizeMake(2.0, 2.0);
设置label圆角
label.layer.cornerRadius = 10;
要是用这样的设置要先在头文件中加上#import<QuartzCore/QuartzCore.h>

4.设置TextField的属性内容
定义一个TextField

userNameField = [[UITextField alloc] initWithFrame:CGRectMake(userNameImg.frame.origin.x+30,userNameImg.frame.origin.y, 165, 40)];
    userNameField.placeholder = @"User Name";
userNameField.attributedPlaceholder = [[NSAttributedString alloc] initWithString:@"手机号码"

                                    attributes:@{ NSForegroundColorAttributeName:placeHolderColor}];
上面这句是设置placeHolder的颜色,placeHolderColor是自己需要的颜色
    userNameField.backgroundColor = [UIColor clearColor];
    userNameField.delegate = self;
    userNameField.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter;
    userNameField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
    userNameField.borderStyle = UITextBorderStyleNone;
    userNameField.font = [UIFont systemFontOfSize:14.0];
    [self.view addSubview:userNameField];

//设置边框样式,只有设置了才会显示边框样式
  text.borderStyle = UITextBorderStyleRoundedRect;
  typedef enum {
    UITextBorderStyleNone,
    UITextBorderStyleLine,
    UITextBorderStyleBezel,
    UITextBorderStyleRoundedRect
  } UITextBorderStyle;

//设置输入框的背景颜色,此时设置为白色如果使用了自定义的背景图片边框会被忽略掉
   text.backgroundColor = [UIColor whiteColor];
//设置背景
  text.background = [UIImage imageNamed:@"dd.png"];
//设置背景
  text.disabledBackground = [UIImage imageNamed:@"cc.png"];
//当输入框没有内容时,水印提示提示内容为password
  text.placeholder = @"password";
//设置输入框内容的字体样式和大小
  text.font = [UIFont fontWithName:@"Arial" size:20.0f];
//设置字体颜色
  text.textColor = [UIColor redColor];
//输入框中是否有个叉号,在什么时候显示,用于一次性删除输入框中的内容
  text.clearButtonMode = UITextFieldViewModeAlways;
typedef enum {
    UITextFieldViewModeNever,  重不出现
    UITextFieldViewModeWhileEditing, 编辑时出现
    UITextFieldViewModeUnlessEditing,  除了编辑外都出现
    UITextFieldViewModeAlways   一直出现
} UITextFieldViewMode;
//输入框中一开始就有的文字
  text.text = @"一开始就在输入框的文字";

//每输入一个字符就变成点用语密码输入
  text.secureTextEntry = YES;
//是否纠错
  text.autocorrectionType = UITextAutocorrectionTypeNo;
typedef enum {
    UITextAutocorrectionTypeDefault, 默认
    UITextAutocorrectionTypeNo,   不自动纠错
    UITextAutocorrectionTypeYes,  自动纠错
} UITextAutocorrectionType;
//再次编辑就清空
  text.clearsOnBeginEditing = YES;
//内容对齐方式
  text.textAlignment = UITextAlignmentLeft;
//内容的垂直对齐方式  UITextField继承自UIControl,此类中有一个属性contentVerticalAlignment
  text.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
//设置为YES时文本会自动缩小以适应文本窗口大小.默认是保持原来大小,而让长文本滚动
  textFied.adjustsFontSizeToFitWidth = YES;
//设置自动缩小显示的最小字体大小
  text.minimumFontSize = 20;
//设置键盘的样式
  text.keyboardType = UIKeyboardTypeNumberPad;
typedef enum {
    UIKeyboardTypeDefault,       默认键盘,支持所有字符
    UIKeyboardTypeASCIICapable,  支持ASCII的默认键盘
    UIKeyboardTypeNumbersAndPunctuation,  标准电话键盘,支持+*#字符
    UIKeyboardTypeURL,            URL键盘,支持.com按钮 只支持URL字符
UIKeyboardTypeNumberPad,              数字键盘
UIKeyboardTypePhonePad,     电话键盘
    UIKeyboardTypeNamePhonePad,   电话键盘,也支持输入人名
UIKeyboardTypeEmailAddress,   用于输入电子 邮件地址的键盘
UIKeyboardTypeDecimalPad,     数字键盘 有数字和小数点
    UIKeyboardTypeTwitter,        优化的键盘,方便输入@、#字符
    UIKeyboardTypeAlphabet = UIKeyboardTypeASCIICapable,
} UIKeyboardType;
 //首字母是否大写
  text.autocapitalizationType = UITextAutocapitalizationTypeNone;
typedef enum {
    UITextAutocapitalizationTypeNone, 不自动大写
    UITextAutocapitalizationTypeWords,  单词首字母大写
    UITextAutocapitalizationTypeSentences,  句子的首字母大写
    UITextAutocapitalizationTypeAllCharacters, 所有字母都大写
} UITextAutocapitalizationType;
时间: 2024-11-11 20:26:06

ios笔记(二)控件属性的相关文章

ios 学习笔记之控件属性

1.文本框 设置密码属性:Secure Text Entry 勾选; 设置文本框带清除属性: Clear Button =Is always visible;  默认是不带清除属性:Never appears 设置文本框默认带出文字属性:Placeholder=用户自定义输入; 设置文本框键盘用户输入完成隐藏代码: [self.text resignFirstResponder];//适用于单个文本框输入完成时隐藏 [self.view endEditing:YES];//适用于全部文本框输入完

IOS基本控件属性

基本控件属性 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 一.控

学习IOS开问题篇--视图的模型控件属性写在私有分类中的原因

在说原型模式之前,我们先来看java里面的深复制和浅复制: 1. 浅复制:被复制的对象的所有变量都持有和原来对象的变量相同的值,而所有的对其他对象的引用都指向原来的对象. 2. 深复制:被复制对象的所有变量都含有与原来对象相同的值,除去那些引用其他变量的对象.那些引用其他对象的变量将指向被复制过来的新对象,而不是原来那些被引用的对象.深复制需要把要复制的对象的所有引用都复制一遍. 这两者的区别就是关于引用对象的处理,浅复制是不考虑引用对象,而深复制需要考虑引用对象的问题. 对java中的clon

iOS学习笔记—— UItableView 控件的简单使用

UITableView 可以说是iOS开发中最常用的控件,除了游戏之外,几乎所有的应用中独会出现他的身影. 使用UITableView控件需要遵守两种协议 UITableViewDelegate和 UITableViewDataSource. 常用方法如下: 1.返回(每个分区)表单元个数(行数) - (NSInteger) tableView: (UItableView *) tableVIew numberOfRowsInSection: (NSInteger)section 2.返回表单元

iOS学习笔记—— UIPickerView 控件的简单使用

UIPickerView 是iOS常用的控件之一,它通过轮转界面提供一系列多值选项,它向用户展示信息,也能收集用户输入.下面是一个普通的UIPickerView控件. 使用UIPickerView控件需要遵守两种协议,一种是UIPickerViewDelegate,另一种是UIPickerViewDataSource. UIPickerViewDelegate协议的方法有: 1.  -(NSString *) pickerView: (UIPickerView * )pickerView tit

UITextField控件属性

UITextField控件属性: enablesReturnKeyAutomatically 默认为No,如果设置为Yes,文本框中没有输入任何字符的话,右下角的返回按钮是disabled的. 1.borderStyle 设置边框样式,只有设置了才会显示边框样式 text.borderStyle = UITextBorderStyleRoundedRect; typedef enum { UITextBorderStyleNone, UITextBorderStyleLine, UITextBo

ios UILabel(label控件)的详细使用及特殊效果

UILabel *label = [[UILabelalloc] initWithFrame:CGRectMake(0, 0, 75, 40)];   //声明UIlbel并指定其位置和长宽 label.backgroundColor = [UIColorclearColor];   //设置label的背景色,这里设置为透明色. label.font = [UIFont fontWithName:@"Helvetica-Bold" size:13];   //设置label的字体和字

第三篇:属性_第一节:控件属性与属性的持久化

一.控件属性 首先,属性是各种.net语言的基本语法.而我们常说的控件属性是指控件类中用public修饰的属性. 见Lable的Text属性: [Bindable(true), DefaultValue(""), Localizable(true), PersistenceMode(PersistenceMode.InnerDefaultProperty), WebCategory("Appearance"), WebSysDescription("Lab

2017-4-25 公共控件属性 菜单和工具栏属性

(一)公共控件属性 1.Button按钮 AutoSize  内容自适应大小 Location  控件左上角相对于容器左上角的位置 Margin  控件与控件的外边距 Enabled  控件是否可以选中 TabIndex   布局用 TabStop 布局用 Visible    是否显示 FlatAppearance  FlatStyle  2个属性配合使用,可以控制按钮的边框样式等 2.CheckBox checked  是否被选中 Appearance 外观样式 CheckAlign   复

visual studio开发工具的C#主流控件属性一览表

visual studio开发工具的C#主流控件属性一览表 详细的介绍了各控制属性的详细中文介绍 C#控件及常用设计整理 1.窗体 1.常用属性 (1)Name属性:用来获取或设置窗体的名称,在应用程序中可通过Name属性来引用窗体. (2) WindowState属性: 用来获取或设置窗体的窗口状态. 取值有三种: Normal (窗体正常显示). Minimized(窗体以最小化形式显示)和 Maximized(窗体以最大化形式显示). (3)StartPosition属性:用来获取或设置运