UIButton文本大小问题

时间:2012-10-26 04:33:43

标签: iphone objective-c ios xcode uibutton

我有以下代码:

UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setTitle:@"My Title" forState:UIControlStateNormal];
button.frame = myCustomRect;
UIColor *fontColor = [UIColor colorWithRed:0.43 green:0.84 blue:0.86 alpha:0.9];
[button setTitleColor:fontColor forState:UIControlStateNormal];
button.backgroundColor = [UIColor whiteColor];
button.titleLabel.textAlignment = NSTextAlignmentCenter;
button.titleLabel.font = [UIFont fontWithName:@"Cooperplate" size:9];
[button addTarget:self
                action:@selector(moreDetails:)
 forControlEvents:UIControlEventTouchUpInside];    
[self.view addSubview:button];

我正在尝试以编程方式向视图添加按钮。 MyCustomRect的参数是(0,0,75,50)。

两件事: a)无论我输入什么字体,它总是显示系统字体。 b)尺寸也根本没有变化。我尝试增加字体大小并且它没有改变,我尝试减小字体大小,它也没有改变。

我做错了什么?

4 个答案:

答案 0 :(得分:3)

您可以在项目中使用自己的自定义字体mentioned here

将自定义字体添加到项目后,可以将其用作

[button.titleLabel setFont:[UIFont fontWithName:@"Cooperplate" size:24.0]];
  

首先,在XCode中找到应用程序.plist文件。通常叫,   [YOUR_APP_NAME] -Info.plist。找到文件后,添加一个新行   key:“应用程序提供的字体”。 XCode将创建第一个   键/值对为你。这是我的.plist文件条目的屏幕截图。

Image

  

在“值”列中添加字体文件的名称。一定要拼写   字体文件的名称正如在列表中看到的那样   项目中的文件。这不是您将引用的名称   从你的UIFont声明中。这只是你的应用知道的   在哪里可以找到您将引用的字体。

     

接下来,你需要   您要使用的字体名称。现在你引用它   你的应用。

答案 1 :(得分:2)

尝试使用UIButton

UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[btn setFrame:CGRectMake(20 , 13, 200, 85)];
UILabel *title = [[UILabel alloc]initWithFrame:CGRectMake(8, 8, 185, 30)];
[title setBackgroundColor:[UIColor clearColor]];
[title setFont:[UIFont fontWithName:@"Chalkboard" size:14]];
[title setFont:[UIFont boldSystemFontOfSize:18]];
title.text=@"This is the title";
[title setTextColor:[UIColor blackColor]];
[btn addSubview:title];
[title release];
[self.view addSubview:btn];

答案 2 :(得分:1)

尝试使用此

[button.titleLabel setFont:[UIFont fontWithName:@"Helvetica-Bold" size:13.0]];

答案 3 :(得分:-1)

在以下代码后使用以下代码:这应解决大小

的问题
button.titleLabel.font = [UIFont fontWithName:@"Cooperplate" size:9];
button.titleLabel.font = [UIFont systemFontOfSize:30];