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

2017-04-11  本文已影响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

上一篇下一篇

猜你喜欢

热点阅读