AndroidResideMenu icon indicating copy to clipboard operation
AndroidResideMenu copied to clipboard

一些疑问

Open wangsai-silence opened this issue 11 years ago • 7 comments

目前项目中使用了您的ResideMenu控件,感觉效果很棒,但是还是有些疑问没有想明白,想和您探讨一下: 1、为什么要在Activity中接管dispatchOnTouch,因为即使不这样,Activity也会将事件分发给底层View,即ResideMenu;不知道这样做有什么其他意义;

2、initvalue中,为什么要把两个scrollview先移除了?有什么必要性么?

[email protected]

wangsai-silence avatar Jan 21 '15 04:01 wangsai-silence

@wangsai-silence 非常欢迎探讨 :)

  1. 去掉 Activity 的 dispatchOnTouch 后,在 Activity 缩小后,你会发现 Activity 缩小的 View 以外的区域无法使用滑动去开启/关闭菜单,所以只有接管整个 Activity。
  2. 现在两个菜单(ScrollView)的显示/隐藏方式是通过 addViewremoveView 实现的,为了将两个 ScrollView 保持在视图的最顶层,在每次打开菜单时都会 addView 一下 ScrollView。当然在每次 addView 前再将 ScrollView remove 也可以,我另外一个考虑是非再菜单加载状态下,减少两个 views 的载入,减少视图层复杂性,不过这个想法是否有效,没有专门去做验证。

有什么想法和建议非常欢迎提出。

SpecialCyCi avatar Jan 24 '15 15:01 SpecialCyCi

@SpecialCyCi 感谢回复: 1、这个问题应该不会有吧,我实际测试也没有发现。Activity始终占满了整个屏幕,而ResideMenu则始终占满了Activity的整个部分,所以所有的事件,ResideMenu应该都能接管的到。

2、两个View的嵌套层次都还好,感觉优化的必要性不是很大,但是肯定可以作为一个优化点。

3、在ResideMenu在接管整个View的时候是通过从window上拿到最底层然后接管的,是否可以考虑从android.R,id.content进行接管呢?这样看起来更自然,所有的操作都是在自己的Layout中进行的

wangsai-silence avatar Jan 26 '15 04:01 wangsai-silence

  1. 关于第一个问题,我昨晚测试的时候确实出现了,Android 4.4.2。
  2. 这个建议值得考虑,当初我写这个库是参考了 SlidingMenu,它也是接管了 DcorView。

不过目前在捣鼓自定义菜单布局,你提到的建议可能会稍晚实现,要是感兴趣也欢迎加入开发哈。

SpecialCyCi avatar Jan 26 '15 08:01 SpecialCyCi

@SpecialCyCi 1、好吧,有机会我找别的手机测试一下,看看是什么原因造成的,你用测试机型是哪一款?

wangsai-silence avatar Jan 26 '15 08:01 wangsai-silence

屌丝机华为 3C && Genymotion

SpecialCyCi avatar Jan 26 '15 09:01 SpecialCyCi

@SpecialCyCi 用同事的华为荣耀4x试了试,木有出现你说的问题,不知道什么情况了,我现在在项目里把那个Activity里的dispatchOnTouchEvent的接管去掉了,看看大家的使用情况,有新的反馈会再和你联系,祝一起顺利。

wangsai-silence avatar Jan 27 '15 01:01 wangsai-silence

a 屌丝来袭~不要惊慌,求help!

xlievo avatar Sep 04 '15 15:09 xlievo