专业java、php、iOS、C++、网页设计、平面设计、网络营销、游戏开发、前端与移动开发培训机构

添加按钮图片

  • CZMenuItem 模型添加 imageName 属性

      @interface CZMenuItem : NSObject
    
      /// 标题
      @property (nonatomic, strong) NSString *title;
    
      /// 图片名称
      @property (nonatomic, strong) NSString *imageName;
    
      + (instancetype)menuItemWithDict:(NSDictionary *)dict;
    
      @end
    
  • CZMenuItemViewModel 创建模型的时候添加对应的图片

      - (NSArray *)composeItems {
          if (_composeItems == nil) {
              NSMutableArray *array = [[NSMutableArray alloc] init];
    
              NSArray *items = @[@{@"title": @"说说", @"imageName": @"tabbar_mood"},
                                 @{@"title": @"照片", @"imageName": @"tabbar_photo"},
                                 @{@"title": @"日志", @"imageName": @"tabbar_blog"}];
    
              for (NSDictionary *dict in items) {
                  CZMenuItem *item = [CZMenuItem menuItemWithDict:dict];
    
                  [array addObject:item];
              }
    
              _composeItems = array;
          }
    
          return _composeItems;
      }
    
      - (NSArray *)menuItems {
          if (_menuItems == nil) {
              NSMutableArray *array = [[NSMutableArray alloc] init];
    
              NSArray *items = @[@{@"title": @"全部动态", @"imageName": @"tab_bar_feed_icon"},
                                 @{@"title": @"与我相关", @"imageName": @"tab_bar_passive_feed_icon"},
                                 @{@"title": @"照片墙", @"imageName": @"tab_bar_pic_wall_icon"},
                                 @{@"title": @"电子相框", @"imageName": @"tab_bar_e_album_icon"},
                                 @{@"title": @"好友", @"imageName": @"tab_bar_friend_icon"},
                                 @{@"title": @"更多", @"imageName": @"tab_bar_e_more_icon"}];
    
              for (NSDictionary *dict in items) {
                  CZMenuItem *item = [CZMenuItem menuItemWithDict:dict];
                  [array addObject:item];
              }
    
              _menuItems = array;
          }
    
          return _menuItems;
      }
    
  • CZMenuViewController 创建按钮的时候设置图片

      for (CZMenuItem *item in self.menuItemVM.menuItems) {
          // stackView添加子控件
          UIButton *button = [[UIButton alloc] init];
    
          button.backgroundColor = [UIColor randomColor];
          [button setTitle:item.title forState:UIControlStateNormal];
          [button setImage:[UIImage imageNamed:item.imageName] forState:UIControlStateNormal];
    
          // 设置按钮的高度
          [button mas_makeConstraints:^(MASConstraintMaker *make) {
              make.height.equalTo(@(60));
          }];
    
          [_menuView addArrangedSubview:button];
      }