zoukankan      html  css  js  c++  java
  • 代理demo

    1-  .h

    #import <UIKit/UIKit.h>
    
    typedef enum {
        HMStatusDetailTopToolbarButtonTypeRetweeted,
        HMStatusDetailTopToolbarButtonTypeComment,
    } HMStatusDetailTopToolbarButtonType;
    
    @class HMStatusDetailTopToolbar, HMStatus;
    
    @protocol HMStatusDetailTopToolbarDelegate <NSObject>
    //代理方法
    @optional
    - (void)topToolbar:(HMStatusDetailTopToolbar *)topToolbar didSelectedButton:(HMStatusDetailTopToolbarButtonType)buttonType;
    @end
    
    @interface HMStatusDetailTopToolbar : UIView
    + (instancetype)toolbar;
    
    @property (nonatomic, weak) id<HMStatusDetailTopToolbarDelegate> delegate;
    @property (nonatomic, assign) HMStatus *status;
    
    @property (nonatomic, assign) HMStatusDetailTopToolbarButtonType selectedButtonType;
    @end

    .m

        // 3.通知代理
        if ([self.delegate respondsToSelector:@selector(topToolbar:didSelectedButton:)]) {
            [self.delegate topToolbar:self didSelectedButton:button.tag];
        }

     实现代理方法:

    #pragma mark - 顶部工具条的代理
    - (void)topToolbar:(HMStatusDetailTopToolbar *)topToolbar didSelectedButton:(HMStatusDetailTopToolbarButtonType)buttonType
    {
        [self.tableView reloadData];
        switch (buttonType) {
            case HMStatusDetailTopToolbarButtonTypeComment: // 评论
                [self loadComments];
                break;
                
            case HMStatusDetailTopToolbarButtonTypeRetweeted: // 转发
                [self loadRetweeteds];
                break;
        }
    }
    IOS开发
  • 相关阅读:
    探索javascript----事件对象下的各种X和Y
    css2----兼容----ie67的3像素bug
    探索javascript----拖拽
    一、Rabbitmq安装与配置信息
    四、RABBITMQ特点
    一,activemq安装和配置相关信息
    三,activemq持久化消息到mysql数据库中
    三、RABBITMQ的几个基本概念
    二、JMS和AMQP的对比
    hibernate的工作原理
  • 原文地址:https://www.cnblogs.com/luanmage/p/4623588.html
Copyright © 2011-2022 走看看