如何使用系统字体调整动作Sheet元素字体的大小?

时间:2013-07-08 12:21:29

标签: ios objective-c uiactionsheet

enter image description here

基本上我想用Web视图创建一个富文本格式编辑器。

我使用下面的代码检索了设备中所有字体的名称。我现在想在我的Web视图中选择一些文本并在其上应用该字体,因此我选择一个Action Sheet来显示所有名称并在其上设置字体。我的问题是一些字体名称太大,并且都设置了相同的字体样式。我想将字体名称显示为字体实际样式。

// array
NSMutableArray *fontNames = [[NSMutableArray alloc] init];

// get font family
NSArray *fontFamilyNames = [UIFont familyNames];

// loop
for (NSString *familyName in fontFamilyNames)
{
    NSLog(@"Font Family Name = %@", familyName);

    // font names under family
    NSArray *names = [UIFont fontNamesForFamilyName:familyName];

    NSLog(@"INSIDE LOOP Font Names = %@", fontNames);

    // add to array
    [fontNames addObjectsFromArray:names];
}
NSLog(@"OUT OF LOOP Font Names = %@", fontNames);

// [fontNames release];

以下是我在webview选择文本中应用选择字体的方法:

NSString *selectedButtonTitle = [actionSheet buttonTitleAtIndex:buttonIndex];
selectedButtonTitle = [selectedButtonTitle lowercaseString];

if ([actionSheet.title isEqualToString:@"Select a font"])
{        
    [printContentWebView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"document.execCommand('fontName', false, '%@')", selectedButtonTitle]];
}

我想在我的动作表

中输出这样的内容

enter image description here

1 个答案:

答案 0 :(得分:1)

您的问题出在UITableView,因为您没有发布UIActionSheetUITableView代码的代码,我创建了一个项目并将其上传到Github( link),您可以找到如何使用以下属性设置调整行文本的大小:

cell.textLabel.adjustsFontSizeToFitWidth = YES;