gpt4 book ai didi

objective-c - 将 PickerView 的委托(delegate)委托(delegate)给另一个 View

转载 作者:行者123 更新时间:2023-11-29 13:36:30 24 4
gpt4 key购买 nike

首先,我想说我才刚刚开始“学习”objective-c。对不起,如果我犯了大错

我正在尝试委托(delegate) -(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row
inComponent:(NSInteger)component
从 View 2 到 View 1...

查看 1.h:

@interface ViewController : UIViewController <PopOverViewControllerDelegate>

查看 1.m:

-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row
inComponent:(NSInteger)component{ //stuff here}

查看2.h:

@protocol PopOverViewControllerDelegate <NSObject, UIPickerViewDelegate>
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row
inComponent:(NSInteger)component;
@end

@interface PopOverViewController : UIViewController <UIPickerViewDataSource>

查看 2.m:

-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row
inComponent:(NSInteger)component{

[self.delegate pickerView:categoryPicker didSelectRow:row inComponent:component];

}

它不工作...

最佳答案

  1. 一个 View 成为另一个 View 的委托(delegate)有点奇怪。 View 真的不应该对数据了解太多——通常是 Controller 做出委托(delegate)所需的各种决策。

  2. 与其让一个委托(delegate) (View1) 将选取器的委托(delegate)消息传递给另一个委托(delegate) (View2),不如让 View2 成为选取器的委托(delegate)?看起来你让事情变得比他们需要的更复杂。

  3. 请告诉我们更多有关问题的信息,而不是“它不起作用”。如果它有效,你一开始就不会问了。告诉我们如何它不起作用。 View2 中的方法是否被调用过?如果是,那么问题是什么?如果没有,为什么不呢? View1 中发生了什么导致它不调用 View2?

关于objective-c - 将 PickerView 的委托(delegate)委托(delegate)给另一个 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10453903/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com