Iphone 如何将视图B中文本字段的内容发送到视图A?
我在Iphone 如何将视图B中文本字段的内容发送到视图A?,iphone,objective-c,xcode,uitableview,tableview,Iphone,Objective C,Xcode,Uitableview,Tableview,我在UIView a中创建了一个tableview a,其中tabledatasource来自a.m文件中定义的plist文件。tableview中的条目是带有keyA、keyB、keyC等的词典 现在,我将在ui视图a中创建一个ui按钮,并创建一个新的modalview B。当按下按钮时,modalview B将弹出。在modalview B中,用户将填写一些UITextfields。用户在文本字段中填写的信息将写入plist文件(如上所述),然后重新加载tableview A的内容 我的问题
UIView a
中创建了一个tableview a
,其中tabledatasource
来自a.m文件中定义的plist文件。tableview
中的条目是带有keyA
、keyB
、keyC
等的词典
现在,我将在ui视图
a中创建一个ui按钮
,并创建一个新的modalview B。当按下按钮时,modalview B将弹出。在modalview B中,用户将填写一些UITextfields
。用户在文本字段中填写的信息将写入plist文件(如上所述),然后重新加载tableview A的内容
我的问题是,用户在modalview B中填写信息。但是tableview A在UIView
A中。当我当前使用modalview B上的应用程序时,似乎无法更改tableview A的内容
是否有一种方法可以将视图B中输入的信息传递给视图a?
非常感谢。您通常使用委托模式实现此行为。查看苹果文档中的iPhoneCoreDataRecipes示例。特别是看看这些课程
- RecipeListTableViewController,表视图A将位于的位置
- RecipeAddViewController,获取信息的模式视图B
- 我想我误解了你的问题。好的,就像sanjeev说的,你可以使用代理。或者您可以使用NSNotification。在要修改plist Post a通知的视图a和视图B中添加通知观察员。
使用自定义协议-这称为委托模式 //A.h级
@interface : ClassA{
}
@end
B.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
您可以使用任何东西来实现您的功能,NSnotification比Protocal有点重,我个人觉得Protocal在您的情况下就足够了
[self.delegate classB:self param1:@"Param1" param2:@"P2" param3:@"p3"];