为iPhone滚动样式文本的最佳轻量级选项是什么?

时间:2009-12-26 20:21:05

标签: iphone uiscrollview

据我所知(如果我错了,请纠正我),似乎没有明显的方法可以在iPhone上设置样式文本的滚动页面(差异字体,重量,大小,文本颜色等)没有使用UIWebView,这似乎需要相当多的内存和资源(并且滚动不像UITableView那样流畅)。

为iPhone滚动样式文本是否有一个好的,轻量级的选项?

3 个答案:

答案 0 :(得分:2)

我会回应Ben的回答,并指出Three20对你正在寻找的东西有着坚实的支持。

查看the GitHub repo

样式文档可以在http://three20.info/api/TTStyle找到,但是现在Three20示例目录中的TTCatalog示例将为您提供最好的示例。查看TTCatalog应用程序中的“样式标签”。

如果您在撰写文本时遇到任何问题,我们会在the Three20 google group设置一组活跃的支持开发人员。

答案 1 :(得分:1)

UITableView实际上是在UIScrollView上构建的。

UIScrollView Class Reference

我过去使用UIScrollView的方式是以编程方式将子视图添加到UIScrollView的contentView(例如UILabels,UIImagesViews等),同时跟踪子视图和它们之间的间距是多少垂直空间(高度)。接受。在添加UIScrollView的子视图结束时,您可以设置UIScollView的内容视图。

#define kFixedHorizontalSize 320.0
#define kNarutalScreenHeight 416.0
#define kViewSpacing 15.0

...

- (void)repopulateScrollView
{
    CGFloat yDrawHeight = 0.0;

    //add subviews, track yDrawHeight

   //for each sub view do something like
   yDrawHeight += [subviewAdded frame].size.height;
   yDrawHeight += kViewSpacing;

    ...

    CGSize contentSize = CGSizeMake(kFixedHorizontalSize, yDrawHeight < kNaturalScreenHeight ? kNaturalScreenHeight : yDrawHeight);
    [[self scrollView] setContentSize:contentSize]; 
}

希望有所帮助!

答案 2 :(得分:1)

根据我的研究,你基本上有2个真正的选择:

  • Joe Hewitt的Three20项目提供了大量样式文本支持
  • 你可以写自己的。

我同意UIWebView在很多情况下对此非常重要。我们通常选择上面的(b),但我听说过有关Three20的好消息。