【问题标题】:set the font of UItextview设置 UItextview 的字体
【发布时间】:2011-12-11 06:49:16
【问题描述】:

我的uiview中有多个textviews我需要设置这个textviews的字体大小,所以我使用了下面的代码但它没有改变字体大小,

for (UIView *subview in self.view.subviews) {

    if ([subview isKindOfClass:[UITextView class]]) {

        ((UITextView *)subview).font = [UIFont fontWithName:@"Helvetica" size:12];
    }

}

【问题讨论】:

  • 添加一些日志语句,以便您可以缩小问题发生的范围。乍一看,这段代码看起来不错,但如果您的文本视图包含在其他视图中,那么您将看不到它们。在 for 循环下记录每个子视图,然后在 if 语句之后再次记录。您确定它们是文本视图而不是文本字段吗?

标签: ios uiview fonts uitextview


【解决方案1】:

正如@jrturton 所说,也许您的文本视图是子视图的子视图,那么就需要某种递归代码。例如:

-(void) setNewFontToTextViews:(UIView*) theView {
    if([[theView subviews] count]) 
        for( UIView * subView in [theView subviews])
            [self setNewFontToTextViews:subView] ;
    else if([theView isKindOfClass:[UITextView class]])
        [(UITextView*)theView setFont:[UIFont fontWithName:@"Helvetica" size:12]];
}

【讨论】:

  • 谢谢。你是对的。我将我的元素放在滚动视图中,这就是它不起作用的原因,所以我将视图设置为在我的滚动视图中搜索并且它起作用了!
猜你喜欢
  • 2011-03-04
  • 2017-08-24
  • 1970-01-01
  • 1970-01-01
  • 2013-10-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多