美文网首页
Slide左侧抽屉&&友盟分享&&

Slide左侧抽屉&&友盟分享&&

作者: 动感超人丶 | 来源:发表于2017-04-11 10:28 被阅读27次

    之前项目遇到了一个问题,现在总结下。

    问题前提条件是:

    用的1.SlideMenu这个侧滑左侧抽屉框架 2.友盟分享sdk 3.新浪分享web分享(即未安装新浪微博客户端情况)

    问题现象描述:

    上一个图

    问题描述图

    只有重新把左侧抽屉打开时才能看见刚刚的web分享视图,因为这个视图是友盟sdk里的api提供的,默认调用就会产生这个问题

    解决办法:

    1.问题定位:

    通过视图可以发现,分享视图是在window上的,这样可以推测应该是和slide那个框架在window的处理上有所冲突。

    2.解决途径:

    先上一个图

    解决办法

    1.slide框架写的很复杂,里面包括很多动画等。如果要完全读懂它,那好多时间都浪费在这里了。我这里并没有自习去研究他的具体底层实现方式。

    2.友盟sdk的api我们也看不到实现函数体,所以这里无法下手

    其实两个框架在使用上很简单,但是对window的操控依赖性很强。我的思路是按照window,在他们布局的时候进行控制,全局搜索window后,发现果然有如图右侧红框的代码。看到代码,我推测,可能是因为分享web视图和menuViewController.view在“谦让”window的显示优先级。于是,我更改一些代码,如上面注释掉的代码打开,再注释掉下面的两行代码。经过测试,果然可以解决这个问题。

    解释:

    代码很简单,在windw这里“垫一层view”,就是把左侧控制器添加到view上,而不是添加到window上。这样新浪web分享view就无法再“谦让”了。哈哈

    总结:

    代码很简单,就是定位问题点时和解决问题比较费时。如果有同样“遭遇”的朋友,可以借鉴一下。有问题我们随时交流哈

    QQ 38020858

    相关文章

      网友评论

          本文标题:Slide左侧抽屉&&友盟分享&&

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