android–Facebook lide slideout菜单(不使用该库)

android–Facebook lide slideout菜单(不使用该库),第1张

概述我想在我的应用程序中使用facebook菜单.这里有许多线程,所有这些都建议使用一个库,它实际上只是截取屏幕截图并将图像向右滑动,以便在左侧显示菜单并在一些过渡时滑动图像.但在这种情况下,右侧的布局因其图像而无法点击.但我还有另一种方法,我有一个根布局已经有菜单布局和内容布局.但根布局在左侧设置了一些负边距,因此不可见.像这样-当用户按下菜单按钮时,菜单布局

我想在我的应用程序中使用facebook菜单.这里有许多线程,所有这些都建议使用一个库,它实际上只是截取屏幕截图并将图像向右滑动,以便在左侧显示菜单并在一些过渡时滑动图像.但在这种情况下,右侧的布局因其图像而无法点击.

但我还有另一种方法,我有一个根布局已经有菜单布局和内容布局.但根布局在左侧设置了一些负边距,因此不可见.像这样-

当用户按下菜单按钮时,菜单布局向右滑动,根布局的左边距设置为0.所以现在我们看到的是 –

现在,真正的问题从这里开始

我想用一些动画来滑动两个布局.因此,当我为菜单布局设置动画时,内容布局,即使我对其应用相同的动画,两种布局的动画也不会达到相同的速度.所以我尝试通过设置边距来向右/左移动ROOT LAYOUT.但是这样做就没有在屏幕上显示.我哪里错了.我设定保证金的方式如下所示 –

int wIDth = leftLayout.getWIDth();isLayoutShown = !isLayoutShown;if(isLayoutShown){    rootLayoutParams.setmargins(0,0);    rootLayout.setLayoutParams(rootLayoutParams);    }else{    rootLayoutParams.setmargins(-wIDth,0);    rootLayout.setLayoutParams(rootLayoutParams);}
最佳答案终于以某种方式我可以做到.这是我点击左上角菜单按钮时使用的代码:

@OverrIDepublic voID onClick(VIEw v) {rootLayoutParams = new LayoutParams(rightLayout.getWIDth(),rightLayout.getHeight());if (lhsMenu.getVisibility() == VIEw.GONE) {    lhsMenu.setVisibility(VIEw.VISIBLE);    Animation slIDeRight = setRightSlIDingAnimation();    rightLayout.setAnimation(slIDeRight);    lhsMenu.setAnimation(slIDeRight);} else {    Animation slIDeleft = setleftSlIDingAnimation();    rightLayout.setAnimation(slIDeleft);    lhsMenu.setAnimation(slIDeleft);    lhsMenu.setVisibility(VIEw.GONE);    }}

更新:还设置rightLayout的左右边距(如果需要),以便rightLayout不会缩小.

_rightLayoutParams.setmargins(wIDth,-wIDth,0);

在我的情况下宽度= 200.

总结

以上是内存溢出为你收集整理的android – Facebook lide slideout菜单(不使用该库)全部内容,希望文章能够帮你解决android – Facebook lide slideout菜单(不使用该库)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1140029.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-31
下一篇2022-05-31

发表评论

登录后才能评论

评论列表(0条)

    保存