iOS UILabel根据字数自适应宽高以及控件按屏幕大小按比例缩放
2017-07-20 10:21
776 查看
//UILabel的自适应
UILabel *label=[[UILabel
alloc]init];
label.backgroundColor=[UIColor
grayColor];
label.text=@"3122222222222222222222222222222222222";
CGFloat width=self.view.frame.size.width-20;
CGRect rect = [label.text
boundingRectWithSize:CGSizeMake(self.view.frame.size.width
- 20,
MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading
attributes:@{NSFontAttributeName: label.font}
context:nil];
label.frame=CGRectMake(label.frame.origin.x,
label.frame.origin.y
, width, rect.size.height);
label.numberOfLines=0;
[self.view
addSubview:label];
//控件按屏幕大小按比例缩放
//先设置宏 我们以iphone6为例
#define SCREEN_RATE (375/[UIScreen mainScreen].bounds.size.width);
- (CGRect)newFrame:(CGRect)frame
{
CGRect newFrame;
newFrame.size.height = frame.size.height/SCREEN_RATE;
newFrame.size.width = frame.size.width/SCREEN_RATE;
newFrame.origin.x = frame.origin.x/SCREEN_RATE;
newFrame.origin.y = frame.origin.y/SCREEN_RATE;
return newFrame;
}
label.frame=label.frame=[self
newFrame:CGRectMake(10,
10, 100,
100)];
UILabel *label=[[UILabel
alloc]init];
label.backgroundColor=[UIColor
grayColor];
label.text=@"3122222222222222222222222222222222222";
CGFloat width=self.view.frame.size.width-20;
CGRect rect = [label.text
boundingRectWithSize:CGSizeMake(self.view.frame.size.width
- 20,
MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading
attributes:@{NSFontAttributeName: label.font}
context:nil];
label.frame=CGRectMake(label.frame.origin.x,
label.frame.origin.y
, width, rect.size.height);
label.numberOfLines=0;
[self.view
addSubview:label];
//控件按屏幕大小按比例缩放
//先设置宏 我们以iphone6为例
#define SCREEN_RATE (375/[UIScreen mainScreen].bounds.size.width);
- (CGRect)newFrame:(CGRect)frame
{
CGRect newFrame;
newFrame.size.height = frame.size.height/SCREEN_RATE;
newFrame.size.width = frame.size.width/SCREEN_RATE;
newFrame.origin.x = frame.origin.x/SCREEN_RATE;
newFrame.origin.y = frame.origin.y/SCREEN_RATE;
return newFrame;
}
label.frame=label.frame=[self
newFrame:CGRectMake(10,
10, 100,
100)];
相关文章推荐
- 根据屏幕宽高按指定比例设置控件的宽高
- Android屏幕的大小、密度以及字符缩放比例——DisplayMetrics类
- [置顶] UILabel根据文本、字体大小计算label宽度;以及自适应高度
- android控件根据屏幕大小自适应 分类: Android界面和组件 2014-07-01 20:12 94人阅读 评论(0) 收藏
- android控件根据屏幕大小自适应
- android 控件的大小计算以及自适应屏幕的大小
- iOS开发笔记-根据frame大小动态调整fontSize的自适应文本及圆形进度条控件的实现
- iOS屏幕适配之通过代码实现控件按比例缩放
- ios 文字 控件 自适应 高度 宽度 CustomCell 自适应高度+uilabel自动换行+ UITextView 根据内容自动调整高度
- Qt中窗体控件按照比例缩放,自适应窗口大小进行布局
- Qt(伪)自适应屏幕大小和控件按比例缩放的几个问题
- Android 根据屏幕尺寸适配控件尺寸(按比例缩放)
- android控件根据屏幕大小自适应
- UILabel根据字数的改变,字体大小自适应
- ImageView设置图片按比例自适应缩放,9.png根据屏幕分辨率放到不同的drawable文件夹中
- iOS开发:UILabel字号根据屏幕缩放
- UIImageView圆角,自适应图片宽高比例,图片拉伸,缩放比例和图片缩微图
- 如何让图片尺寸按照比例自适应屏幕大小
- Android控件自适应屏幕大小
- rem自适应 窗体大小自动 rem设置 改变rem来完成等比例缩放