一个笔尖中的多个视图(addSubview)

时间:2009-07-06 14:58:52

标签: iphone uiview uitableview

我正在尝试保持代码清洁并保持文件数量不变。我正在使用UITableViewController,我想在其上加载另一个视图。我认为这很简单:

(1)在我的.h文件中创建一个IBOutlet

@interface MyViewController : UITableViewController {
    ...
    UIView *downloadView;
    ...
}
...
@property (nonatomic, retain) IBOutlet UIView *downloadView;
...

(2)将其链接到我在IB中的视图

(3)做类似的事情:

self.view = downloadView;

[self.view addSubview:self.downloadView];

但这对我不起作用。如果我做

[self.tableView removeFromSuperview];

然后表视图消失但我不知道如何从我的笔尖添加我的视图。我正在以编程方式为tableView做一切,但我认为这不重要。并且使用UITableViewController子类化UIViewController,我认为使用addSubview或类似的东西会没问题。我错过了什么?这不应该那么难吗?

更新: 因此,如果我执行以下操作:

UIView *newView = [[UIView alloc] initWithFrame:self.view.frame];
newView.backgroundColor = [UIColor greenColor];
[self.view addSubview:newView];

它(大部分)确实是我想要的。那么这是否意味着我正在弄乱我从IB连接我的观点的方式?在IB中,我将fileOwner的类设置为MyViewController,并在downloadView和我创建的视图(在IB中)之间建立连接。那就是我应该做的一切吗?

1 个答案:

答案 0 :(得分:-1)

我认为这是层次结构中添加视图的问题。你可以试试这个:

[UIWindow addSubview:self.downloadView]; 

看看它是否出现。或许,

[self.tableView addSubview:self.downloadView];

否则我认为你有正确的想法。