我正在尝试创建一个Tab Bar应用程序,其中一个ViewController包含UIToolbar
和UISegmentedController
。我遇到的问题是设置UISegmentedController
以在两个视图之间切换,因为我尝试切换的视图是UIWebView
的子类,我希望将它们放在单独的文件中。 (例如,不只是在ViewController的“-viewDidLoad”中设置两个视图。
ViewController中方法的代码如下所示:
- (IBAction)segmentedControlChanged
{
switch (segmentedControl.selectedSegmentIndex)
{case 0:
[self.view addSubview:videosView];
[imagesView removeFromSuperview];
NSLog(@"1");
break;
case 1:
[self.view addSubview:imagesView];
[videosView removeFromSuperview];
NSLog(@"2");
break;
default:
break;
}
我在本文档顶部导入了videosView.h,videosView.m,imagesView.h和imagesView.m,并设置为UIWebView
的子类。
我得到的错误似乎表明它不接受addSubview中的imagesView或VideosView以及removeFromSuperview
不是已知的类方法。
提前致谢!
答案 0 :(得分:0)
1- UIViewController不响应removeFromSuperview
,UIView做
2- addSubview
要求将UIView
的子类传递给它,而不是UIViewController
- (IBAction)segmentedControlChanged
{
switch (segmentedControl.selectedSegmentIndex)
{case 0:
[self.view addSubview:videosView.view];
[imagesView.view removeFromSuperview];
NSLog(@"1");
break;
case 1:
[self.view addSubview:imagesView.view];
[videosView.view removeFromSuperview];
NSLog(@"2");
break;
default:
break;
}
答案 1 :(得分:0)
看看这个广告:https://github.com/xmartlabs/XLMailBoxContainer。 它在视图控制器中创建UI动画。这些视图控制器可以扩展UITableViewController或任何其他视图控制器。
我希望这能帮到你!