代码如下
UIFont *font = [UIFont systemFontOfSize:25]; CGSize size = [text sizeWithFont:font constrainedToSize:CGSizeMake(320, 2000.0) lineBreakMode:UILineBreakModeWordWrap];
int w = size.width;//一个汉字的宽度
size = [text sizeWithFont:font constrainedToSize:CGSizeMake(w, 2000.0) lineBreakMode:UILineBreakModeWordWrap];
int h = size.height;
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, w,h)];
label.backgroundColor = [UIColor clearColor];
label.textColor = [UIColor whiteColor];
label.font = font;
label.text = text;
label.numberOfLines = 0;
label.shadowColor = [UIColor darkGrayColor];
label.shadowOffset = CGSizeMake(1, 1);
这个是自己用代码创建的一个UILabel,用来显示自定义的文字,当屏幕竖立的时候文字显示正常
当屏幕横着放的时候,文字没有跟着屏幕调整,屏幕横着,文字就向上输出显示,当我把CGRectMake(0, 0, w,h)中的w跟h位置
调换以后,文字就横着摆放了,但是每一个字的输出方向并没有改变,比如“我”这个字,在横屏的时候就是向左倾斜90度显示的,是不是要调每一个字的输出方式呢???
UIFont *font = [UIFont systemFontOfSize:25]; CGSize size = [text sizeWithFont:font constrainedToSize:CGSizeMake(320, 2000.0) lineBreakMode:UILineBreakModeWordWrap];
int w = size.width;//一个汉字的宽度
size = [text sizeWithFont:font constrainedToSize:CGSizeMake(w, 2000.0) lineBreakMode:UILineBreakModeWordWrap];
int h = size.height;
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, w,h)];
label.backgroundColor = [UIColor clearColor];
label.textColor = [UIColor whiteColor];
label.font = font;
label.text = text;
label.numberOfLines = 0;
label.shadowColor = [UIColor darkGrayColor];
label.shadowOffset = CGSizeMake(1, 1);
这个是自己用代码创建的一个UILabel,用来显示自定义的文字,当屏幕竖立的时候文字显示正常
当屏幕横着放的时候,文字没有跟着屏幕调整,屏幕横着,文字就向上输出显示,当我把CGRectMake(0, 0, w,h)中的w跟h位置
调换以后,文字就横着摆放了,但是每一个字的输出方向并没有改变,比如“我”这个字,在横屏的时候就是向左倾斜90度显示的,是不是要调每一个字的输出方式呢???
界面上面添加一个BUTTON,用来动态的创建UILabel
如下
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, 200.0, 50.0)];
//设置阴影
[label setShadowColor:[UIColor blackColor]];
[label setShadowOffset:CGSizeMake(-2, 3)];
//设置是否能与用户进行交互
label.userInteractionEnabled = YES;
//设置label中的文字是否可变,默认值是YES
label.enabled = NO;
//设置高亮
label.highlighted = YES;
label.highlightedTextColor = [UIColor orangeColor];
//设置label的行数
label.numberOfLines = 0;
//设置字体大小适应label宽度
label.adjustsFontSizeToFitWidth = YES;
//设置字体:粗体,正常的是 SystemFontOfSize
label.font = [UIFont boldSystemFontOfSize:20];
//设置显示文字
label.text = @"请输入用户名!";
label.baselineAdjustment = UIBaselineAdjustmentNone;
[self.view addSubview:label]; 当点击按钮以后文字显示在屏幕左上角,显示正常当我重新写一个类如下
@implementation showText
- (void) show{
UIWindow *window = [[[UIApplication sharedApplication] windows] objectAtIndex:0];
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, 200, 50)];
//设置阴影
[label setShadowColor:[UIColor blackColor]];
[label setShadowOffset:CGSizeMake(-2, 3)];
//设置是否能与用户进行交互
label.userInteractionEnabled = YES;
//设置label中的文字是否可变,默认值是YES
label.enabled = NO;
//设置高亮
label.highlighted = YES;
label.highlightedTextColor = [UIColor orangeColor];
//设置label的行数
label.numberOfLines = 1;
//设置字体大小适应label宽度
label.adjustsFontSizeToFitWidth = YES;
//设置字体:粗体,正常的是 SystemFontOfSize
label.font = [UIFont boldSystemFontOfSize:20];
//设置显示文字
label.text = @"请输入用户名!";
[window addSubview:label];
}
@end点击按钮的时候调用如下
showText *toast = [[showText alloc] autorelease];
[toast show];这个时候文字就显示在屏幕的左下角,并且是向上输出的
请问是不是要设置输出的坐标,等于说这个时候文字是没有跟着屏幕转动的