我正在尝试实现developer.apple.com所示的示例
一切正常,但selectedWeapon不会更改。

Q1:我不知道我忘记了什么,所以选择将正常工作
问题2:根据Apple的说法,“该示例不需要实际代码即可设置用户界面”。我从代码中填充对象。有什么方法可以将对象添加到XIB中的arrayController中吗?

@implementation Combatant

- (instancetype)initWithName:(NSString *)aName
{
  self = [super init];
  if (self) {
    _weapons = @[@"Dagger", @"Sword", @"Pike"];
    _name = aName;
    _selectedWeapon = [_weapons firstObject];
  }
  return self;
}

@end

@interface Combatant : NSObject


@property (nonatomic, strong) NSString *name;
@property id selectedWeapon;
@property NSArray *weapons;

- (instancetype)initWithName:(NSString *)aName;

@end


资料库:https://github.com/xhruso00/moderatelyComplexBindings

最佳答案

Q1:NSPopupButton的选择索引未链接到arrayController。没有它,arrayController不知道选择了哪个选项。
Q2:不可能。苹果谈论胶合代码。

10-08 06:05