登录 立即注册
金钱:

Code4App-iOS开发-iOS 开源代码库-iOS代码实例搜索-iOS特效示例-iOS代码例子下载-Code4App.com

Swift版本仿淘宝简书京东App很友好弹出view效果

[复制链接]
来自: 夏天然后 分类: iOS精品源码 上传时间: 2016-7-7 14:00:40

项目介绍:

[Objective-C] 查看源文件 复制代码
let screen_Width = UIScreen.mainScreen().bounds.size.width
let screen_Height = UIScreen.mainScreen().bounds.size.height
class XtPopViewController: UIViewController {

        /// 在底部弹出的View
    var popView = UIView()
        /// rootView
    var rootView = UIView()
        /// 主VC
    var mainVc: UIViewController?
        /// maskView
    var maskView = UIView()


[Objective-C] 查看源文件 复制代码
func createPopViewControllerWithMainViewController(root: UIViewController, popView: UIView) -> Void {
        self.mainVc = root
        self.popView = popView
        self.createSubviews()
    }


[Objective-C] 查看源文件 复制代码
func createSubviews() {
        self.view.backgroundColor = UIColor.blackColor()
        mainVc!.view.frame = self.view.bounds
        mainVc!.view.backgroundColor = UIColor.grayColor()
        rootView = mainVc!.view
        self.addChildViewController(mainVc!)
        self.view.addSubview(rootView)
    }


[Objective-C] 查看源文件 复制代码
func openAction(){
        UIApplication.sharedApplication().windows[0].addSubview(popView)
        var frame = popView.frame
        frame.origin.y = self.view.bounds.size.height - self.popView.frame.size.height

        UIView .animateWithDuration(0.3, delay: 0, options: UIViewAnimationOptions.CurveEaseInOut, animations: { 
            //
            self.rootView.layer.transform = self.firstTransform()
            }) { (Bool) in
                //
                UIView .animateWithDuration(0.3, delay: 0, options: UIViewAnimationOptions.CurveEaseInOut, animations: { 
                    //
                    self.rootView.layer.transform = self.secondTransform()
                    // 显示maskview, 遮挡view
                    self.maskView = UIView.init(frame: self.view.bounds)
                    self.maskView.backgroundColor = UIColor.whiteColor()
                    self.maskView.alpha = 0.5
                    self.rootView.addSubview(self.maskView)
                    // popView上升
                    self.popView.frame = frame
                    }, completion: { (Bool) in
                        //
                })
        }
    }


[Actionscript3] 查看源文件 复制代码
func closeAction(){
        var frame = popView.frame
        frame.origin.y += popView.frame.size.height

        UIView.animateWithDuration(0.3, animations: {
            //
            self.maskView.alpha = 0
            self.popView.frame = frame
            // 改善滑动效果
            self.rootView.layer.transform = self.firstTransform()

            }) { (Bool) in
                UIView.animateWithDuration(0.3, delay: 0, options: UIViewAnimationOptions.CurveEaseInOut, animations: {
                    // 变为初始值
                    self.rootView.layer.transform = CATransform3DIdentity;
                    }, completion: { (Bool) in
                        // 移除
                        self.popView.removeFromSuperview()
                })
        }   
    }


代码比较多的,  工具类下载链接,欢迎Star




相关源码推荐:

我来说两句
*滑动验证:
所有评论(12)
doudou-wwcd 2016-7-7 15:26:55
强烈支持楼主ing……
回复
lppcoding 2016-7-7 16:54:22
正需要啊,感谢楼主无私分享!
回复
ren854362491 2016-7-7 20:38:45
学习学习!
回复
xiaobo_cc 2016-7-8 10:44:14
感谢分享,Code4App有你更精彩:)
回复
chao仔 2016-7-8 14:02:02
虽不明,但觉厉!
回复
夏天然后 2016-7-8 15:05:57
楼主用心了,内容非常精彩。
回复
ZWPeng 2016-7-8 17:10:49
楼主用心了,内容非常精彩。
回复
我是曹大侠 2016-7-8 17:52:14
强烈支持楼主ing……
回复
momoda01 2016-7-11 13:42:55
精华内容,楼主V5!
回复
12下一页
提取码:  下载次数:48 状态:已购或VIP 售价:0(原价:10)金钱 下载权限:初级码农 
2590 0 48
联系我们
首页/微信公众账号投稿

帖子代码编辑/版权问题

QQ:435399051,742864542

如何获得代码达人称号?

代码贡献英雄榜
用户名 下载数
通过邮件订阅最新 Code4App 信息
上一条 /4 下一条
联系我们
关闭
合作电话:
13802416937
Email:
435399051@qq.com
商务市场合作/投稿
问题反馈及帮助
联系我们

广告投放| Github|申请友链|手机版|Code4App ( 粤ICP备15117877号-1 )

快速回复 返回顶部 返回列表