2014-10-04 28 views
0

提取从self.window视图在我:在Objective-C

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions: 

我设置以下scrollView

UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:screenRect]; 
[self.window addSubview:scrollView]; 

在以后的方法,我怎么会那么毁了这个观点,也就是从self.window中删除它。

+0

我假设你已经尝试存储对它的引用并调用它'removeFromSuperview'? – Undo 2014-10-04 20:55:33

回答

1

通常我不会在application:didFinishLaunchingWithOptions:中添加scrollView。相反,请在视图控制器中创建UIScrollView,或者在viewDidLoad方法中或在故事板中创建UIScrollView

无论哪种方式,删除scrollView将看起来像这样。首先创建一个属性来存储参考UIScrollView

@property (nonatomic, weak) UIScrollView *scrollView; // Use a weak reference to the scrollview, that way once its removed from the superview (which keeps a strong reference to its subviews), the scrollview will be deallocated. 

然后初始化属性,并将其添加为子视图:

self.scrollView = [[UIScrollView alloc] initWithFrame:screenRect]; 
[self.window addSubview:scrollView]; 

之后,你可以将其删除:

[self.scrollView removeFromSuperview];