QMUIPopupMenuItemProtocol

@protocol QMUIPopupMenuItemProtocol <NSObject>

/// item 里的文字
@property(nonatomic, copy, nullable) NSString *title;

/// item 的高度,默认为 -1。小于 0 的值均表示高度以 QMUIPopupMenuView.itemHeight 为准,当需要给某个 item 指定特定高度时才需要用这个 height 属性。
@property(nonatomic, assign) CGFloat height;

/// item 被点击时的事件处理,需要在内部自行隐藏 QMUIPopupMenuView。
@property(nonatomic, copy, nullable) void (^handler)(__kindof NSObject<QMUIPopupMenuItemProtocol> *aItem);

/// 当前 item 所在的 QMUIPopupMenuView 的引用,只有在 item 被添加到菜单之后才有值。
@property(nonatomic, weak, nullable) QMUIPopupMenuView *menuView;

/// item 被添加到 menuView 之后(也即 menuView 属性有值了)会被调用,可在这个方法里更新 item 的样式(因为某些样式可能需要从 menuView 那边读取)
- (void)updateAppearance;

@end

Undocumented

  • item 里的文字

    Declaration

    Objective-C

    @property (nonatomic, copy, nullable) NSString *title;

    Swift

    var title: String? { get set }
  • item 的高度,默认为 -1。小于 0 的值均表示高度以 QMUIPopupMenuView.itemHeight 为准,当需要给某个 item 指定特定高度时才需要用这个 height 属性。

    Declaration

    Objective-C

    @property (nonatomic) CGFloat height;

    Swift

    var height: CGFloat { get set }
  • item 被点击时的事件处理,需要在内部自行隐藏 QMUIPopupMenuView。

    Declaration

    Objective-C

    @property (nonatomic, copy, nullable) void (^) (__kindof NSObject<QMUIPopupMenuItemProtocol> *_Nonnull) handler;

    Swift

    var handler: ((QMUIPopupMenuItemProtocol) -> Void)? { get set }
  • 当前 item 所在的 QMUIPopupMenuView 的引用,只有在 item 被添加到菜单之后才有值。

    Declaration

    Objective-C

    @property (nonatomic, weak, nullable) QMUIPopupMenuView *menuView;

    Swift

    weak var menuView: QMUIPopupMenuView? { get set }
  • item 被添加到 menuView 之后(也即 menuView 属性有值了)会被调用,可在这个方法里更新 item 的样式(因为某些样式可能需要从 menuView 那边读取)

    Declaration

    Objective-C

    - (void)updateAppearance;

    Swift

    func updateAppearance()