UI基础-day02-Shopping-01搭建商城基本框架
UI基础-day02-Shopping-02添加一个商品
UI基础-day02-Shopping-03九宫格排序
效果图
需求:
- 点击'➖'实现删除功能
- 商品没有后,'➖'功能不可用
- 只要点击'➕',则'➖'恢复可以状态
- 点击'➕'实现添加功能
- 购买商品,超出最大购买数量则'➕'功能,不可用.
- 裁剪超出View的商品
代码
点击'➕'按钮的添加事件
-(void)btnAddViewClick{
......
//控制按钮(➕,➖)状态(1.只要点击➕,btnRemove就可用. 2.超过最大商品数,btnAdd就不可以用)
self.btnRemove.enabled = YES;
NSUInteger shopTempNum = self.shopView.subviews.count;//获取子控件的个数
if (shopTempNum >= shopMaxNum) {
self.btnAdd.enabled = NO;
}
}
点击'➖'按钮的删除事件
-(void)btnRemoveViewClick{
//删除shopView里面最后一个子控件
[self.shopView.subviews.lastObject removeFromSuperview];
//控制按钮(➕,➖)状态(1.只要点击➖,btnAdd就可用. 2.没有商品,btnRemove就不可以用)
self.btnAdd.enabled = YES;
NSUInteger shopTempNum = [self.shopView.subviews count];
if(shopTempNum == 0){
self.btnRemove.enabled = NO;
}
}
知识点
裁剪超出View的商品
#import "ViewController.h"
static const NSUInteger shopMaxNum = 12; //商品最大个数(静态常量)
......
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
......
self.shopView.clipsToBounds = YES; //裁剪超出View的商品
}
裁剪前-效果图
裁剪后-效果图
static const NSUInteger shopMaxNum = 12;
- static修饰的变量必须放在@implementation外面或方法中
- 它只在程序启动初始化一次。
- const修饰的变量是不可变的