最近在写一个购物车提交订单的界面,出于方便直接使用了tableviewcontroller
提交界面需要一个存在底部单独存在的支付按钮
tableviewcontroller不能直接拉取一个view放入,于是用代码实现一个view的添加,创建一个_payView,并使用如下代码添加到界面底部
[self.view addSubview:_payView];
运行之后发现并不像想象的那么顺利 -_-#
这样添加之后是直接跟在tableview的底下,随着tableview滚动。
多次尝试之后,用新的方法添加到应用最高层
[[[[UIApplication sharedApplication] windows] firstObject] addSubview:_payView];
然后在viewWillDisappear将_payView隐藏,不然离开该界面底部的支付界面还是会抑制存在
_payView.hidden=YES;
效果如下
终于成功的添加在底部,之后还要实现点击 请选择您的收货时间 时,底部弹出一个pickview供用户选择,如果用下列代码,点击时候也是直接加到tableview的底部,还要拉到下方才能进行选择
[self.view addSubview:_backgroundView];
[self.view addSubview:_receiptTimeView];
然后添加到最高层
[[[[UIApplication sharedApplication] windows] firstObject] addSubview:_backgroundView];
[[[[UIApplication sharedApplication] windows] firstObject] addSubview:_receiptTimeView];
一本满足 :-D
最后在点击背景或者 取消 和 确定 按钮的时候 需要将这些view都清除掉,还有记得把_payView显示出来
_payView.hidden=NO;
[UIView animateWithDuration:0.15fanimations:^{
CGRect position =CGRectMake(0.0f,self.view.bounds.size.height,self.view.bounds.size.width,self.view.bounds.size.height/4);
_receiptTimeView.frame= position;
_receiptTimeView=nil;
}];
CGRect position1 =CGRectMake(0.0f,0.0f,self.view.bounds.size.width,0);
_backgroundView.frame= position1;
_backgroundView=nil;
tableviewcontroller 添加一个悬在tableview上面的view有点麻烦,感觉能不用就不要用了,开始用了tableviewcontroller拉好约束,太懒就不想换其他办法来做了(ー ー;)。po主刚入门,欢迎技术大牛和萌新来交流,一起走向更美好的PY life。 :-P
吐槽一下 引用的时候换行代码不能直接粘贴上去,还得手动换行粘贴 (・_・;