iOS-自定义分享界面

作者: 肆意二货 | 来源:发表于2016-12-03 13:05 被阅读2873次

    这是一个分享到各个平台的,分享菜单界面。

    主要思路:一个遮罩视图,一个分享菜单,分享菜单上面用UICollectionView展示所有的平台分享入口。动画UIView的动画,遮罩视图改变alpha值,分享菜单界面通过改变bottom的位置。

    1.公开的参数和方法。dataSource是用来动态的删除你觉得多余的分享平台的入口的。

    2.宏定义是各个图片的名字,区分也是通过这里的宏定义的名字去区分各个平台的,你也可以通过更改这里的宏定义和更改宏定义相关的操作去减少多余平台的入口。这里的视图的整体布局是通过xib文件,layout布局去实现的。

    3.实现视图弹出和消失的动画。特别需要注意的:因为我是直接更改约束的,起初更改了约束,并没有动画效果,视图会向上缩,然后消失。加上了[self layoutIfNeeded]这句代码,动画效果就出来了。这里的动画是两个动画串起来的。

    4.在这里实现分享具体的操作,根据宏定义的图片的名字去实现各个平台的跳转。

    5.这里是你设置你需要剔除的平台的入口的具体操作,注意这个是根据你宏定义的图片名去操作的,你剔除的时候也要根据这个名字去操作。

    6.分享菜单视图的具体使用。

    7.菜单栏实现的样式效果。

    如果有什么疑问和问题,欢迎随时给我留言或者评论,我会尽快给予回复。期待在这里跟你们共同进步。代码下载链接https://pan.baidu.com/s/1qXWYStI  密码:y56v

    相关文章

      网友评论

      • 陌上北辰:看下下面发的一大串邮箱,我也是醉了,都是一群伸手党
      • Apollo2021:美女,下面弹框的宽怎么设置成屏幕的宽呀
        Apollo2021:@肆意二货 谢谢
        肆意二货:@Apollo_Xiao ShareMenuView.xib这个文件,然后showView这个视图,你修改一下左右边距的约束就可以全屏了。
      • 蔚蓝梦旅人:楼主棒棒哒:kissing_heart:
        肆意二货:@蔚蓝梦旅人 你也棒棒哒。
      • 庸者的救赎:个人建议看看UIActivityController,或者openshare源码,比在这里撸界面好。还有,好好学一下markdown,博客中的代码不应该贴图的。再有,写出来的代码要考虑质量呀,宏定义可以换成enum或option的。:smile:
        肆意二货:我试过enum,但是我写了之后无法比较类型了,因为上面的宏是图片的名字。我只是分享一些我自己写的东西,我觉得用得到而已。我希望你有认真看我的代码提出我的不足。撸界面这个词我还是第一次听说,就当受教了哈。
      • 简单就是真:lbb631160503@163.com 求Demo
      • 紫电22:求Demo...niehaili320@163.com
      • 莫名sir:求Demo,493016405@qq.com,谢谢
        e8db7ee18a6a:美女给我发一个demo呗1916565298@qq.com
        莫名sir:@肆意二货_林霞 多谢:smile:
        肆意二货:@莫名sir 发了哦
      • angelen:给我来一份 Demo,正需要:1037710238@qq.com,谢谢
        angelen:@肆意二货_林霞 番茄
        肆意二货:@angelen 发送了。
      • LoSenTrad1:美女,给我一份demo.我来学学!490790096@qq.com 谢谢
        肆意二货:@LoSenTrad1 发了。
      • 菜鸟小邪神:1273436603@qq.com
        肆意二货:@小邪神菜鸟 功能自己实现,根据你自己的需求。
        菜鸟小邪神:@肆意二货_林霞 原来只是个界面,哎
        肆意二货:@小邪神菜鸟 发了
      • 4b7a371bc621:女神,求demo
      • 4b7a371bc621:105612551@qq.com
        肆意二货:@4b7a371bc621 已经发送了。
      • bdf9075670d1:461582127@qq.com
        bdf9075670d1:谢谢美女:clap:
        肆意二货:@YCxm 发了。
      • bdf9075670d1:美女给我一份demo:smile:
      • xxttw:虽然比较简单.但是很贴合实际开发. 赞一个
        肆意二货:@Unc1eWang 嘿嘿。
      • 向钱冲啊:写个枚举多好了。这样if else 是不是有点难受呢
        肆意二货:@向钱冲啊 枚举的话,那要是有一些分享平台不要的时候,就不能根据图片名字去跳转了。那么你不能动态的去改变,分享的时候,万一没装平台,你是要隐藏这个平台的。
      • 小楼东风:求Demo.820811266@qq.com
        小楼东风:@肆意二货_林霞 谢了!
        肆意二货:@小楼东风 发了。
      • 剑伟大大:美女都来写博客了。
        肆意二货:@nullnil 讨论技术哈。
      • 花前月下:美女
        肆意二货:@花前月下 并不害怕哈…
        花前月下:@肆意二货_林霞 哈哈哈。你还害怕我意图对你不轨啊。 :smile:
        肆意二货:@花前月下 讨论技术哈。
      • 菜鸟小邪神:你的分享是通过友盟的嘛?分享判断平台显示你咋做的?
        肆意二货:@向钱冲啊 分享平台都是统一跳转的,到时候你把分享内容直接传进来就可以。传出去,那么你每次都要去实现这个block,并且还要写跳转代码。如果样式有区别,在点击事件里面在区分,也是可以的。
        向钱冲啊:@肆意二货_林霞 建议如果让别人用的话。用block把事件带出去,这样耦合小
        肆意二货:@小邪神菜鸟 都可以呀,你集成到你的项目中,然后把跳转的代码,放在这个里面就可以了。
      • NSLogGPX:有demo吗?
        肆意二货:@NSlog_GPX 发了呢。
        NSLogGPX:@肆意二货_林霞gpxnslog@gmail.com
        肆意二货:@NSlog_GPX 你给我你的邮箱地址,我给你发。

      本文标题:iOS-自定义分享界面

      本文链接:https://www.haomeiwen.com/subject/sdkcmttx.html