从 plist 加载滚动视图
Posted
技术标签:
【中文标题】从 plist 加载滚动视图【英文标题】:Loading Scroll Views from plists 【发布时间】:2010-12-02 20:00:07 【问题描述】:这里是交易:对于一个新闻应用程序,我在滚动视图中加载一个视图,以便在每个部分上进行水平分页,这没问题,PageControl 演示帮助很大,但现在我需要加载一个视图在另一个滚动视图中以编程方式显示每个部分的内容,交易是我需要已经在 NIB 文件上定制设计的视图,所以每个部分看起来都不同,所以我想使用 plist 加载每个自定义视图通用滚动视图。
这是我到目前为止得到的:
- (void)loadScrollViewWithPage:(int)page
if (page < 0)
return;
if (page >= kNumberOfPages)
return;
// replace the placeholder if necessary
Seccion *controller = [viewControllers objectAtIndex:page];
if ((NSNull *)controller == [NSNull null])
controller = [[Seccion alloc] initWithPageNumber:page];
[viewControllers replaceObjectAtIndex:page withObject:controller];
[controller release];
// add the controller's view to the scroll view
if (controller.view.superview == nil)
NSDictionary *numberItem = [self.contentList objectAtIndex:page];
//UIImage *image1 = [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"image1.jpg" ofType:nil]];
controller.sectionTitle.text = [numberItem valueForKey:Nombre];
controller.sectionView.text = [numberItem objectForKey:Vista];
controller.sectionId.text = [numberItem valueForKey:Id];
//Here is supposed to have the code to load the view inside the scroll view I tried using: [controller.sectionScrollView addSubview:controller.sectionView.text];
CGRect frame = scrollView.frame;
frame.origin.x = frame.size.width * page;
frame.origin.y = 0;
controller.view.frame = frame;
[scrollView addSubview:controller.view];
提前非常感谢
【问题讨论】:
【参考方案1】:如果您的所有视图都有自己的 nib,这可能会起作用:
UIView *view = [[[NSBundle mainBundle] loadNibNamed:@"MyView" owner:self options:nil] objectAtIndex:0];
这样您就可以将每个笔尖的名称保存在 plist 中。
【讨论】:
非常感谢,它真的很有用。实际上我正在寻找在同一个 NIB 文件中使用视图,每个视图都有不同的名称,但我更改了代码,以便我可以使用你的方式,它就像一个魅力。以上是关于从 plist 加载滚动视图的主要内容,如果未能解决你的问题,请参考以下文章