iOS开发UILabel的常用属性和方法

//

//  ViewController.m

//  LabelAll

//

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {

[super viewDidLoad];

self.view.backgroundColor = [UIColor yellowColor];

UILabel *myLabel = [[UILabel alloc]initWithFrame:CGRectMake(100, 100, 100, 50)];

//labele背景色

myLabel.backgroundColor = [UIColor brownColor];

[self.view addSubview:myLabel];

//label文字

myLabel.text = @"不易yi";

//label文字颜色

myLabel.textColor = [UIColor whiteColor];

//label文字大小

myLabel.font = [UIFont systemFontOfSize:14];//系统默认是17

//label文字对齐方式

myLabel.textAlignment = 0;

/*

NSTextAlignmentLeft      = 0,      左

NSTextAlignmentCenter    = 1,   中

NSTextAlignmentRight     = 2,    右

*/

//label标记(tag)

myLabel.tag = 123;

//设置文本省略

myLabel.lineBreakMode =NSLineBreakByTruncatingHead;//其中lineBreakMode可选值为

/*

linBreakMode enum{

NSLineBreakByWordWrapping = 0,//保留整个单词,以空格为边界

NSLineBreakByCharWrapping,//保留整个字符

NSLineBreakByClipping,//以边界为止

NSLineBreakByTruncatingHead,//省略开头,以省略号代替

NSLineBreakByTruncatingTail,//省略结尾,以省略号代替

NSLineBreakByTruncatingMiddle//省略中间,以省略号代替

}

*/

myLabel.numberOfLines = 1;//行数设置为1,不设置时系统会默认行数为1

//当需要设置的行数为不限数量的时候可以用numberOfLines=0实现

//当label大小使用sizeToFit方法,调整大小时会考虑到该属性中存储的值

//    [myLabel sizeToFit];

//实现文本多行显示

myLabel.lineBreakMode = NSLineBreakByCharWrapping;

myLabel.numberOfLines = 0;

//adjustFontSizeToFitWidth方法可实现文本自动根据label大小自动调整字体尺寸,直到文本的大小达到了自己设置的label文本尺寸最大、最小值与字符串的最大最小值,要是用这个方法还有一个很大的限制就是只有在numberOfLines设置为1时才能用

//设置label的边框和颜色

myLabel.layer.borderColor = [UIColor lightGrayColor].CGColor;//边框颜色,要为CGColor

myLabel.layer.borderWidth = 1;//边框宽度

//设置label圆角

myLabel.layer.cornerRadius = 10;

//设置阴影

myLabel.shadowColor =[UIColor grayColor];

//设置阴影大小

myLabel.shadowOffset = CGSizeMake(2.0, 2.0);

//设置高亮

myLabel.highlighted =YES;

//设置是否能与用户交互

myLabel.userInteractionEnabled = YES;

//设置label文字是否可变

myLabel.enabled = NO;//系统默认是yes

#pragma mark 自适应宽

UILabel *label3 = [[UILabel alloc] init];

label3.text = @"jfdkgiuhuhkjkllklmmlkgfhsresr";

CGSize size1 = CGSizeMake(20,20); //设置一个行高上限

NSDictionary *attribute = @{NSFontAttributeName: label3.font};

CGSize labelsize = [label3.text boundingRectWithSize:size1 options:NSStringDrawingUsesDeviceMetrics attributes:attribute context:nil].size;

label3.frame = CGRectMake(0, 400, labelsize.width + 3, labelsize.height);

label3.backgroundColor = [UIColor redColor];

[self.view addSubview:label3];

// 系统的这个方法计算不是特别精确,所以要加3-5(不加的话,字符串长了以后label.frame.size.width会略小于字符串长度,导致文字显示不全)

#pragma mark   根据文本内容自动调整label高度

NSString *text =[[NSString alloc]init];

text = @"输入文本内容输入文本内容输入文本内容输入文本内容";

CGSize size = CGSizeMake(280, 180);

UIFont *fonts = [UIFont systemFontOfSize:14.0];

CGSize msgSie = [text sizeWithFont:fonts constrainedToSize:size lineBreakMode: NSLineBreakByCharWrapping];

UILabel *textLabel  = [[UILabel alloc] init];

[textLabel setFont:[UIFont boldSystemFontOfSize:14]];

textLabel.frame = CGRectMake(20,300, 280,msgSie.height);

textLabel.text = text;

textLabel.backgroundColor = [UIColor whiteColor];

textLabel.lineBreakMode = NSLineBreakByCharWrapping;//实现文字多行显示

textLabel.numberOfLines = 0;

[self.view addSubview:textLabel];

#pragma mark 设置label背景图

CGSize sizeone= CGSizeMake(100, 200);

UIImage *image =[UIImage imageNamed:@"1.jpg"];

//调用修改背景图的大小与label大小一致的方法

UIImage *laterImage =[self scaleImage:image ToSize:sizeone];

UIColor * color = [UIColor colorWithPatternImage:laterImage];

UILabel * label1 = [[UILabel alloc] initWithFrame:CGRectMake(50, 50, 100, 200)];

[label1 setBackgroundColor:color];

[self.view addSubview:label1];

}

-(UIImage *)scaleImage:(UIImage *)img ToSize:(CGSize)itemSize{

UIImage *i;

// 创建一个bitmap的context,并把它设置成为当前正在使用的context

UIGraphicsBeginImageContext(itemSize);

CGRect imageRect=CGRectMake(0, 0, itemSize.width, itemSize.height);

// 绘制改变大小的图片

[img drawInRect:imageRect];

// 从当前context中创建一个改变大小后的图片

i=UIGraphicsGetImageFromCurrentImageContext();

// 使当前的context出堆栈

UIGraphicsEndImageContext();

// 返回新的改变大小后的图片

return i;

}

- (void)didReceiveMemoryWarning {

[super didReceiveMemoryWarning];

// Dispose of any resources that can be recreated.

}

@end

时间: 2024-09-30 07:17:55

iOS开发UILabel的常用属性和方法的相关文章

iOS开发UItableview的常用属性方法的使用

有些属性和方法始终是记不清,只能记下来,方便查找 如果对你有帮助请支持,没有帮助请告诉我哪里需要改进!谢谢! //  ViewController.m //  TableViewAll #import "ViewController.h" @interface ViewController ()<UITableViewDelegate, UITableViewDataSource> @end @implementation ViewController - (void)vi

iOS开发UILabel的公共属性及拓展属性

在IOS开发的过程中,UILabel是很常用的一个控件,同时也是大量使用的一个控件.创建一个UILabel一般需要五六句代码,如果我们需要创建几十个UILabel,就意味着我们要写五六十句代码,其实很多代码是重复的,我们可以把类似的代码写到一个公共的方法中,以提高工作效率和降低代码重复.官方提供UILabel的一些属性有很大的局限性,有些在项目中开发中需要用到的一些拓展性的属性,根据个人经验,也顺便一起总结在这里. 一.创建UILabel公共的方法 1.头文件中声明方法如下: ? 1 2 3 4

UILabel的常用属性和方法

接下来我们看下UILabel,它是文字标签,用来显示文字用的,我们在软件中看到的文字,大多数都是它的身影.它继承自UIView,所有具有UIView的所有基因,在此就不一一说明,我们着重的说下UILabel在UIView的基础上新增的东西.如下所示: 接下来我们看下UILabel的很重的属性——font, 上面的是普通的格式,我们也可以通过字体的名字来设置想要的字体. 上面的代码的关键就是如何获得字体的名字,我们可以在控制台先输出下,然后从中找出我们想要的. 部分结果如下: 如果没有我们想要的,

iPone应用开发 UIView 常用属性和方法

iPone应用程序开发 UIView常用属性和方法 常用属性 alpha 视图的透明度0.0f - 1.0f backgroundColor 视图的背景颜色 subviews 子视图的集合 hidden 视图是否隐藏 tag 视图的唯一标示符,是一个整形数据 superview 视图的父视图 multipleTouchEnabled 是否开启多点触控 userInteractionEnable 是否响应触摸事件 常用方法 - (void)removeFromSuperview; //从父视图中删

文顶顶 iOS开发UI篇—transframe属性(形变)

iOS开发UI篇—transframe属性(形变) 1. transform属性 在OC中,通过transform属性可以修改对象的平移.缩放比例和旋转角度 常用的创建transform结构体方法分两大类 (1) 创建“基于控件初始位置”的形变 CGAffineTransformMakeTranslation(平移) CGAffineTransformMakeScale(缩放) CGAffineTransformMakeRotation(旋转) (2) 创建“基于transform参数”的形变

iOS开发UI基础—transframe属性(形变)

iOS开发UI基础-transframe属性(形变) 1. transform属性 在OC中,通过transform属性可以修改对象的平移.缩放比例和旋转角度 常用的创建transform结构体方法分两大类 (1) 创建"基于控件初始位置"的形变 CGAffineTransformMakeTranslation(平移) CGAffineTransformMakeScale(缩放) CGAffineTransformMakeRotation(旋转) (2) 创建"基于trans

iOS开发:UIImageView常用操作

UIImageView,顾名思义,是用来放置图片的.使用Interface Builder设计界面时,当然可以直接将控件拖进去并设置相关属性,这就不说了,这里讲的是用代码. 1.创建一个UIImageView: 创建一个UIImageView对象有五种方法: UIImageView *imageView1 = [[UIImageView alloc] init]; UIImageView *imageView2 = [[UIImageView alloc] initWithFrame:(CGRe

iOS开发之删除过期Provisioning Profiles方法

2014-05-15 22:02 by Jeff Li 前言 系列文章:[传送门] 马上快要期末考试了,为了学点什么.就准备这系列的博客,记录复习的成果. 正文-计数  概率 概率论研究随机事件.它源于赌徒的研究.即使是今天,概率论也常用于赌博.随机事件的结果是否只凭运气呢?高明的赌徒发现了赌博中的规律.尽管我无法预知事件的具体结果,但我可以了解每种结果出现的可能性.这是概率论的核心. "概率"到底是什么?这在数学上还有争议."频率派"认为概率是重复尝试多次,某种结

UIWebView浏览器控件常用属性与方法汇总

一.什么是UIWebView UIWebView是iOS内置的浏览器控件 系统自带的Safari浏览器就是通过UIWebView实现的 二.UIWebView常用属性和方法 UIWebView常用的加载资源的方法 - (void)loadRequest:(NSURLRequest *)request; @property(nonatomic) UIDataDetectorTypes dataDetectorTypes; // 需要进行检测的数据类型 @property(nonatomic,rea