我是IOS,Xcode和MVC的新手。我的学习曲线很陡峭,而且我认为这是最基本的任务。
我有一个带有两个标签的标签式应用程序。两个选项卡视图都与Web服务进行通信,我想在每个选项卡视图中添加一个图像,更改图像以指示连接状态。
所以,我用控制器类(IconViewController)创建了第三个.xib文件。我希望在每个选项卡视图中添加和删除此图标视图的实例。
以下是我的图标视图的伪代码:
@interface IconViewController : UIViewController
{
UIImageView *_icon;
}
@property (nonatomic) IBOutlet UIImageView *icon;
- (void)setForBusy;
- (void)setForOk;
- (void)setForFail;
并实施:
@implementation IconViewController
@synthesize icon = _icon;
-(void)setForBusy
{
// Set Busy Icon Image
}
-(void)setForOk
{
// Set Ok Icon Image
}
-(void)setForFail
{
// Set Fail Icon Image
}
图标IBOutlet连接到随附的xib文件上的UIImageView。
以下是根标签控制器之一:
#import "IconViewController.h"
@interface TaboneViewController : UIViewController
{
IconViewController *_iconViewController;
}
@property (nonatomic) IBOutlet IconViewController *iconViewController;
和实施:
@synthesize iconViewController = _iconViewController;
- (void)viewDidLoad
{
[super viewDidLoad];
self.iconViewController = [[IconViewController alloc]
initWithNibName:@"iconViewController"
bundle:nil];
[self.view addSubview:self.iconViewController.view];
}
在tabView xib界面生成器中,我添加了一个Object,并使其成为类型 IconViewController 。我将图标视图控制器对象 - >参考插座连接到文件所有者 - > iconViewController插座。
运行项目我收到错误:
加载了“iconViewController”笔尖,但未设置视图插座。
我已尝试过其他连接,但没有运气。在我看来,我的第一个连接应该工作,但事实并非如此。
知道我误解了什么吗?原则是否正确(将第三个视图的实例加载到两个根视图中)?如果是这样,哪个插座需要连接?
非常感谢,Polly
答案 0 :(得分:1)
我看到了你的问题。您希望两个选项卡都具有共同的图像阶段。我认为最好实现UIView(或UIImageView)的子类并实现所有方法,如set(void)setForBusy等。你应该从父ViewController接收图像的阶段,比如UINavigationView控制器(如果你有的话)。否则你应该在其他地方保存舞台。我个人认为,仅为您的目的创建新控制器太贵了。
希望它有所帮助。