私がやろうとしていること:
私は持っていViewController
ます:
@implementation ViewController
@synthesize myPicker;
@synthesize myPickerHelper;
@synthesize label;
#pragma mark - View lifecycle
- (void)viewDidLoad
{
[super viewDidLoad];
myPickerHelper = [[UIPickerViewHelper alloc]initWithUIPickerView:myPicker andNumberOfComponents:4];
[myPickerHelper.valuesForComponent1 addObject:@"TEST1"];
[myPickerHelper.valuesForComponent1 addObject:@"TEST2"];
;
[weightsPicker reloadAllComponents];
[weightsPicker selectRow:0 inComponent:0 animated:YES];
//TODO receive message from picker helper.
//label.text = ... set a listner (like that one in java) or what else
}
}
そして、私にはPickerViewHelper
: (デリゲートとデータソースの問題を処理する) があります。
@interface UIPickerViewHelper : NSObject <UIPickerViewDelegate, UIPickerViewDataSource, OnPickerViewChangeDelegate>
@implementation UIPickerViewHelper
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
//TODO send message to controller view.
}
そしてプロトコル:
@protocol OnPickerViewChangeDelegate
@optional
-(void)onChange:(NSString*)result;
@end
私が望むのは、UiPickerViewHelper
クラスでプロトコルメソッド「onChange」を使用して、(ViewController 内の) ラベルに通知されるようにすることです。Javaでそれを解決する方法は知っていますが、目的cでそれを解決する方法がわかりません。
よろしく