【TabBar嵌套Navigation案例-发现页面-按钮上的图片旋转 Objective-C语言】

一、接下来,我们来做这个,点击以后,让它出一个蓝色的View

通知

1.就是我们示例程序的这种效果,

一点击,让这个按钮旋转,然后呢,再让它出来一个蓝色的View,

首先,我们要去监听它的点击事件,这是第一,我点击以后,我要做一些什么样的操作,要有点击事件,

所以呢,我要把这个东西,要去拖根儿线过来啊,然后呢,我们现在实际上,这个控制器,还没有这个类呢,所以,我们还要去创建一个类,

在Discovery这一块儿,我要写这个按钮的逻辑,那么,我肯定要写在ViewController里边,但是,这个Controller,还没有绑定类,我要先创建一个类,

通知

在Discovery的Controller文件夹下,New一个File,

通知

继承自UIViewController,叫做HMGroupBuyController,

下一步,给它先绑定一下,

通知

再来它的点击事件,把这个玩意儿拖过来,

通知

叫做:groupBuyClick:

通知

在这个里边来写,

通知

首先呢,这个里边,有一个图片的旋转,还有一个蓝色的View,

我们一个一个来做吧,我们先来做……先来做View吧,

这个View呢,怎么着来做,我的思路是这个样子的啊,

1)就是搞一个View,

通知

2)这个View的高度,先给它设置为0,先给它设置到这个位置上,

3)然后呢,再去通过点击,改变它的高度,比如说150,

4)首先呢,它的X = 0,y = 64,

上面这个红色的navigation是半透明的,如果你y = 0 开始,上面应该能看到一点点儿蓝色,

首先呢,在这个里边,我们先来一个View,

通知

@property(nonatomic,weak)UIView *blueView;

我懒加载啊,

- (UIView *)blueView{

if(!_blueView){

}

return _blueView;

}

通知

然后,我们在这个里边来写,

UIView *blueView = [[UIView alloc] init];

blueView.backgroundColor = [UIColor blueColor];

blueView.frame = CGRectMake(0,64,kScreenWidth,0);// 它的高度 先给它来一个0

_blueView = blueView;// 再去赋值

通知

然后,再去添加啊,

[self.view addSubview:blueView];

通知

OK,这个blueView有了以后,我先在viewDidLoad里边,调用这个方法,

[self blueView];

通知

先创建出来,一会儿我要说一个问题啊,

blueView应该有了,有了以后,当我们点击它的时候,

我们只需要让它的高度,变成0,或者变成150,就可以了,

然后呢,以动画的形式变,也就是说,首先,我要写一个动画,

[UIView animateWithDuration(NSTimeInterval) animation:^(void)animations];

通知

输入两个参数:

1)animateWithDuration:(NSTimeInterval),来一个0.25

通知

2)animations:^(void)animations,来一个

^{

// 来一个 self.blueView 我要去改变它的高度 是不是可以用分类

通知

// 导一下头文件 直接点儿h

self.blueView.h = 150;

通知

然后呢,加一个中括号和分号,

通知

运行一下,看看有没有反应,

通知

还是有反应的吧,然后,这个里边,我们试一下啊,把这个64,改成0,看看是什么效果,

这个现在展开,是150啊,

这条线,现在跟右边的这条线是对着的啊,

通知

y改成0啊,直接command + R,

通知

然后,

通知

这个蓝色的View,最下边儿,离这个线,还差64的距离啊,

能够看到这个红色的navigation的背景,有点儿蓝吗,

它实际上,0是在这儿的,我们说,控制器的View,是在上边这儿的,我们想让它到下边这一块儿,只差64的距离,设置64,或者是,设置translucent = NO,

好,来到viewDidLoad:里边,加一个translucent等于NO,

通知

[self.navigationController.navigationBar setTranslucent:NO];

通知

这个时候,蓝色的View,就可以了到这根线这块儿来了,

我这儿还是0 啊,y 还是0,

通知

也就是说,跟大家说过,也就是说,translucent = 半透明的意思&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清风清晨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值