iOS 控件宽高字体大小适配方法
2016-12-16 11:57
411 查看
1.在AppDelegate.h里面设置两个方法:
- (CGFloat)autoScaleW:(CGFloat)w;
- (CGFloat)autoScaleH:(CGFloat)h;
2.在AppDelegate.m里面设置两个属性:
//当前屏幕与设计尺寸(iPhone6)宽度比例
@property (nonatomic, assign)CGFloat autoSizeScaleW;
//当前屏幕与设计尺寸(iPhone6)高度比例
@property (nonatomic, assign)CGFloat autoSizeScaleH;
实现自定义方法- (void)initAutoScaleSize;
在 - (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;中调用此方法
#pragma mark - ScaleSize
- (void)initAutoScaleSize{
if (kScreenHeight == 480)
{
//4s
_autoSizeScaleW = kScreenWith / 375;
_autoSizeScaleH = kScreenHeight / 667;
}else if (kScreenHeight == 568)
{
//5
_autoSizeScaleW = kScreenWith / 375;
_autoSizeScaleH = kScreenHeight / 667;
}else if (kScreenHeight ==667){
//6
_autoSizeScaleW = kScreenWith / 375;
_autoSizeScaleH = kScreenHeight / 667;
}else if(kScreenHeight == 736){
//6p
_autoSizeScaleW = kScreenWith / 375;
_autoSizeScaleH = kScreenHeight / 667;
}else{
_autoSizeScaleW = 1;
_autoSizeScaleH = 1;
}
}
- (CGFloat)autoScaleW:(CGFloat)w{
return w * self.autoSizeScaleW;
}
- (CGFloat)autoScaleH:(CGFloat)h{
return h * self.autoSizeScaleH;
}
3.在pch文件中设置宏定义
#define autoScaleW(width) [(AppDelegate *)[UIApplication sharedApplication].delegate autoScaleW:width]
#define autoScaleH(height) [(AppDelegate *)[UIApplication sharedApplication].delegate autoScaleH:height]
4.写控件时设置字体大小:
[UIFont systemFontOfSize:autoScaleW(14)]
设置frame:
CGRectMake(CGRectGetMaxX(self.productNameLabel.frame)
+ 10 , self.productNameLabel.top + 3, autoScaleW(32),autoScaleW(17));
- (CGFloat)autoScaleW:(CGFloat)w;
- (CGFloat)autoScaleH:(CGFloat)h;
2.在AppDelegate.m里面设置两个属性:
//当前屏幕与设计尺寸(iPhone6)宽度比例
@property (nonatomic, assign)CGFloat autoSizeScaleW;
//当前屏幕与设计尺寸(iPhone6)高度比例
@property (nonatomic, assign)CGFloat autoSizeScaleH;
实现自定义方法- (void)initAutoScaleSize;
在 - (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;中调用此方法
#pragma mark - ScaleSize
- (void)initAutoScaleSize{
if (kScreenHeight == 480)
{
//4s
_autoSizeScaleW = kScreenWith / 375;
_autoSizeScaleH = kScreenHeight / 667;
}else if (kScreenHeight == 568)
{
//5
_autoSizeScaleW = kScreenWith / 375;
_autoSizeScaleH = kScreenHeight / 667;
}else if (kScreenHeight ==667){
//6
_autoSizeScaleW = kScreenWith / 375;
_autoSizeScaleH = kScreenHeight / 667;
}else if(kScreenHeight == 736){
//6p
_autoSizeScaleW = kScreenWith / 375;
_autoSizeScaleH = kScreenHeight / 667;
}else{
_autoSizeScaleW = 1;
_autoSizeScaleH = 1;
}
}
- (CGFloat)autoScaleW:(CGFloat)w{
return w * self.autoSizeScaleW;
}
- (CGFloat)autoScaleH:(CGFloat)h{
return h * self.autoSizeScaleH;
}
3.在pch文件中设置宏定义
#define autoScaleW(width) [(AppDelegate *)[UIApplication sharedApplication].delegate autoScaleW:width]
#define autoScaleH(height) [(AppDelegate *)[UIApplication sharedApplication].delegate autoScaleH:height]
4.写控件时设置字体大小:
[UIFont systemFontOfSize:autoScaleW(14)]
设置frame:
CGRectMake(CGRectGetMaxX(self.productNameLabel.frame)
+ 10 , self.productNameLabel.top + 3, autoScaleW(32),autoScaleW(17));
相关文章推荐
- iOS 控件宽高字体大小适配方法
- iOS 控件宽高字体大小适配方法
- iOS 控件宽高字体大小适配方法
- iOS字体大小适配的几种方法
- iOS字体大小适配的几种方法
- IOS开发的字体大小设置有几种方法
- iOS一种简单的改变一个label上范围内字体颜色和大小的方法
- iOS不同屏幕适配字体大小
- 字体大小适配屏幕的方法
- ios根据不同尺寸的iPhone对显示的字体大小进行适配
- iOS 一个控件内字符显示不同的字体,大小和颜色
- iOS中对不同分辨率设备的字号大小适配方法
- iOS UILabel根据字数自适应宽高以及控件按屏幕大小按比例缩放
- iOS设置导航与其标题的颜色及字体大小和系统默认TabBar的相关设置与使用方法
- ios字体大小适配(Category)
- iOS 字体大小适配
- iOS开发-UI控件:修改textField的placeholder的字体颜色、大小
- 根据控件大小自动调整字体大小方法(C#)
- iOS开发之--如何修改TabBarItem的title的字体和颜色/BarButtonItem的title的字体大小和颜色/添加背景图片,并添加点击方法
- [置顶] iOS适配不同屏幕下的字体大小