由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
MobileDevelopment版 - UITextField如何自动调整字体大小?
相关主题
xcode: 控件摆放位置求教Re: 谁有一种叫做minion的英文字体(打印出来极漂亮)。
xcode/itune什么时候会停止支持3.5英寸的屏幕? (转载)这里有人有mathtime字体么?
Android缺省字体很难看,有什么办法吗?Re: 请高人指点网页字体
如何在xcode修改默认字体跟大小firefox字体的问题
请教如何增大Xcode 工具栏的字体大小over 5000個英文字體打包下載
UITextField如何自动调整字体大小? (转载)买卖提油猴子改良版
font height/width in word我三月初在北京看见的令人气愤的两个情景
chrome怎么调字体大小?自制的赈灾宣传片
相关话题的讨论汇总
话题: uilabel话题: font话题: height话题: size
进入MobileDevelopment版参与讨论
1 (共1页)
X*********n
发帖数: 570
1
ios开发中在UITextField中如何根据字数多少自动调整字体大小?
发现如果字数太多,后面的就显示“。。。”了 而不是自动缩小字体而显示更多的字
选了min font size和adjust to fit也不起作用
网上搜了一圈 没发现有用的帮助 可有高人有经验可以分享,谢谢
z*******n
发帖数: 1034
2
自己算,这有个UILabel多行的,改一改
////UILabel+MultiLineAutoSize.h
#import
@interface UILabel (MultiLineAutoSize)
- (void)adjustFontSizeToFit;
@end
////UILabel+MultiLineAutoSize.m
#import "UILabel+MultiLineAutoSize.h"
@implementation UILabel (MultiLineAutoSize)
- (void)adjustFontSizeToFit
{

int maxDesiredFontSize =22;
int minFontSize = self.minimumFontSize;
CGFloat labelWidth = self.frame.size.width;
CGFloat labelRequiredHeight = self.frame.size.height;

UIFont *font = self.font;
int i=0;

for(i = maxDesiredFontSize; i > minFontSize; i=i-2)
{
font = [font fontWithSize:i];
NSLog(@"Trying size: %u", i);

/* This step is important: We make a constraint box
using only the fixed WIDTH of the UILabel. The height will
be checked later. */
CGSize constraintSize = CGSizeMake(labelWidth, MAXFLOAT);

// This step checks how tall the label would be with the desired
font.
CGSize labelSize = [self.text sizeWithFont:font constrainedToSize:
constraintSize lineBreakMode:NSLineBreakByWordWrapping];

/* Here is where you use the height requirement!
Set the value in the if statement to the height of your UILabel
If the label fits into your required height, it will break the loop
and use that font size. */
if(labelSize.height <= labelRequiredHeight)
break;
}
// You can see what size the function is using by outputting: NSLog(@"
Best size is: %u", i);

// Set the UILabel's font to the newly adjusted font.
self.font = font;

// Put the text into the UILabel outlet variable.
self.text = self.text;
}
@end

【在 X*********n 的大作中提到】
: ios开发中在UITextField中如何根据字数多少自动调整字体大小?
: 发现如果字数太多,后面的就显示“。。。”了 而不是自动缩小字体而显示更多的字
: 选了min font size和adjust to fit也不起作用
: 网上搜了一圈 没发现有用的帮助 可有高人有经验可以分享,谢谢

z*******n
发帖数: 1034
3
大致过程就是 得到UITextField的width和text 然后缩小字体算width

【在 X*********n 的大作中提到】
: ios开发中在UITextField中如何根据字数多少自动调整字体大小?
: 发现如果字数太多,后面的就显示“。。。”了 而不是自动缩小字体而显示更多的字
: 选了min font size和adjust to fit也不起作用
: 网上搜了一圈 没发现有用的帮助 可有高人有经验可以分享,谢谢

X*********n
发帖数: 570
4
谢谢版主

【在 z*******n 的大作中提到】
: 大致过程就是 得到UITextField的width和text 然后缩小字体算width
z*******n
发帖数: 1034
5
my pleasure

【在 X*********n 的大作中提到】
: 谢谢版主
1 (共1页)
进入MobileDevelopment版参与讨论
相关主题
自制的赈灾宣传片请教如何增大Xcode 工具栏的字体大小
youtube 都上了UITextField如何自动调整字体大小? (转载)
那年那兔那些事儿——励志篇font height/width in word
wsn的英文有超过柴玲的吗?chrome怎么调字体大小?
xcode: 控件摆放位置求教Re: 谁有一种叫做minion的英文字体(打印出来极漂亮)。
xcode/itune什么时候会停止支持3.5英寸的屏幕? (转载)这里有人有mathtime字体么?
Android缺省字体很难看,有什么办法吗?Re: 请高人指点网页字体
如何在xcode修改默认字体跟大小firefox字体的问题
相关话题的讨论汇总
话题: uilabel话题: font话题: height话题: size