UISplitViewController 内にある 2 つのビュー コントローラー間でデータを通信するのに苦労しています。私はこのチュートリアルに従っています。マスター ビューと詳細ビューの両方で UITableViews を使用して分割ビュー コントローラーを作成できました。今、私が本当に欲しいのは、マスターテーブルの特定の行をタップすると、詳細ビューに値を送信する必要があるということです.
カスタムデリゲートをいじって、あるビューコントローラーから別のビューコントローラーに値を渡して、それらの間に通信があるかどうかを確認していますが、何も機能していないようです。
MasterTableView.h 内
@protocol sendingProtocol <NSObject>
-(void)passSomeValue:(NSString *)someValue;
@end
@interface MasterTableView : UITableViewController
{
NSArray *menuArray;
id<sendingProtocol>delegate;
}
@property (nonatomic,assign) id<sendingProtocol>mydelegate;
@end
.m ファイルで合成されます。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[[self mydelegate] passSomeValue:@"Some Value"];
}
詳細TableView.hで
-(void)passSomeValue:(NSString *)someValue
{
NSLog(@"%@", someValue);
}
ViewDidLoad メソッド内で mydelegate を呼び出していることに注意してください。これは書き方ですか?誰か助けてくれませんか?
- (void)viewDidLoad
{
[super viewDidLoad];
MasterTableView *masterView = [[MasterTableView alloc] init];
masterView.mydelegate = self;
}
前もって感謝します!