我在tableview A
中创建了UIView A
,其中tabledatasource
来自A.m文件中定义的plist文件。 tableview
中的条目是包含keyA
,keyB
,keyC
等字典的字典。
现在我要在UIButton
A中创建UIView
和新的模态视图B.按下按钮时,会弹出模态视图B.在模态视图B中,将有一些UITextfields
由用户填写。用户填写文本字段的信息将写入plist文件(如上所述),然后重新加载tableview A的内容。
我的问题是,用户在模态视图B中填写信息。但是表视图A在UIView
A中。当我正在使用应用程序时,我似乎无法更改tableview A的内容modalview B?
如果我能通过视图B中输入的信息来查看A? 非常感谢。
答案 0 :(得分:4)
使用自定义Protocals - 这称为委托模式
// ClassA.h
@interface : ClassA{
}
@end
ClassB.h
@protocol ClassBDelegate;
@interface : ClassB{
id <ClassBDelegate> delegate
}
@property(nonatomic,assign) id <ClassBDelegate> delegate;
@end
@protocol ClassBDelegate <NSObject>
-(void)classB:(ClassB*)bclass param1:(NSString*)p1 param2:(NSString*)p2 param3:(NSString*)p3;
@end
将委托设置为ClassA - 接收器
按钮操作(在班级b中) 只是说
[self.delegate classB:self param1:@"Param1" param2:@"P2" param3:@"p3"];
答案 1 :(得分:1)
您通常使用委托模式来实现此行为。查看Apple文档中的示例iPhoneCoreDataRecipes。特别要看一下类
答案 2 :(得分:0)
我想我误解了你的问题。好的,就像sanjeev说你可以使用代表。或者您可以使用NSNotification。在视图A中添加通知观察者,在视图B中添加plist,发布通知。 See This Example