解决华为手机下方导航栏压盖布局的方法(同时使用AndroidSlidingUpPanel和SlidingMenu出现的问题)

我在使用AndroidSlidingUpPanel开源项目的时候将项目导入了我的工程中,同时我又使用了SlidingMenu的框架,于是出现了这种问题。
在这里插入图片描述
在这里插入图片描述
问题的解决:本来单独使用AndroidSlidingUpPanel框架的时候我调出导航栏布局也会跟着做相应适配,而导入了SlidngMenu后却出现了这种问题。所以我想问题一定出现在SlidingMenu项目上。于是我研究发现应用SlidngMenu时MainActivity需要继承SlidingActivity,而SlidingActivity是继承于Activity的,并不是AppCompatActivity。并且在继承AppCompatActivity时才能实现根据导航栏的有无进行适配。
而我又想实现适配,又想使用SlidingMenu。我在想如果能够让SlidingMenu继承的是AppCompatActivity不就好了,后来我发现改变这种继承很难,就没有更改它的继承关系。但是我在查阅Activity和AppCompatActivity关系的时候,发现了这样一篇博客,给了我解决问题的灵感。如下:
https://blog.csdn.net/qqqqqq654/article/details/61914553
图片1
可以发现Activity和AppCompatActivity的区别就是一个actionbar。而我的项目之前继承的是AppCompatActivity,我为了去掉标题栏就在清单文件这个activity中加了这样的样式:
图片2
我想现在继承的是SlidingActivity,也就是Activity,哪里来的标题栏!我就将这段主题样式改回了原来的样式:
图片3
同时又参考了这篇博客:
https://blog.csdn.net/SkySmile1992/article/details/78122071
在application标签引用的theme中加入
false
至此问题解决,大功告成!

小知识

Sliding_menu(左侧用toggle()控制开关,右侧用showSecondaryMenu())
得到侧边栏的控件

ps:这个笔记是我之前在word里面总结的,那时候还没有csdn博客,可能某次我关闭电脑时忘了关闭这个word,导致第二次开机时word问我是否要修复,我点了修复完了里面所有的图片就都消失了,原来的文档也找不见了,今天我写到这里备份一下,真是怕以后连这些文字也没了!
续:后来找到了原文:
我在使用AndroidSlidingUpPanel开源项目的时候将项目导入了我的工程中,同时我又使用了SlidingMenu的框架,于是出现了这种问题。
问题的解决:本来单独使用AndroidSlidingUpPanel框架的时候我调出导航栏布局也会跟着做相应适配,而导入了SlidngMenu后却出现了这种问题。所以我想问题一定出现在SlidingMenu项目上。于是我研究发现应用SlidngMenu时MainActivity需要继承SlidingActivity,而SlidingActivity是继承于Activity的,并不是AppCompatActivity。并且在继承AppCompatActivity时才能实现根据导航栏的有无进行适配。
而我又想实现适配,又想使用SlidingMenu。我在想如果能够让SlidingMenu继承的是AppCompatActivity不就好了,后来我发现改变这种继承很难,就没有更改它的继承关系。但是我在查阅Activity和AppCompatActivity关系的时候,发现了这样一篇博客,给了我解决问题的灵感。如下:
https://blog.csdn.net/qqqqqq654/article/details/61914553

可以发现Activity和AppCompatActivity的区别就是一个actionbar。而我的项目之前继承的是AppCompatActivity,我为了去掉标题栏就在清单文件这个activity中加了这样的样式:

我想现在继承的是SlidingActivity,也就是Activity,哪里来的标题栏!我就将这段主题样式改回了原来的样式:
在这里插入图片描述

同时又参考了这篇博客:
https://blog.csdn.net/SkySmile1992/article/details/78122071
在application标签引用的theme中加入
false
至此问题解决,大功告成!
在这里插入图片描述

AndroidSlidingUpPanel 是一个上拉面板, 就是向上滑动的时候往上飞出一个显示面板控件, 该库效果在 Google Music, Google Maps and Rdio等 App 中用到。 效果图: 用法:使用com.sothree.slidinguppanel.SlidingUpPanelLayout作为您的活动布局的根元素。 布局必须设置为顶部或底部。请确保它有两个元素。 第一个元素是你的主要布局。第二个元素是你的向上滑动面板布局。 主要布局应当具有的宽度和高度设置为match_parent。 滑动的布局的宽度应设置为match_parent;高度应设置为match_parent,WRAP_CONTENT或最大desireable高度。 如果您想定义高度屏幕为percetange,可将其设置为match_parent,滑动视图定义为layout_weight属性。  默认情况下,整个面板将作为拖动区域和将截获的点击和拖动事件。可以通过使用setDragView方法或umanoDragView属性限制牵引区到特定的图。 想了解更多信息,请参考示例代码:<com.sothree.slidinguppanel.SlidingUpPanelLayout     xmlns:sothree="http://schemas.android.com/apk/res-auto"     android:id="@ id/sliding_layout"     android:layout_width="match_parent"     android:layout_height="match_parent"     android:gravity="bottom"     sothree:umanoPanelHeight="68dp"     sothree:umanoShadowHeight="4dp">     <TextView         android:layout_width="match_parent"         android:layout_height="match_parent"         android:gravity="center"         android:text="Main Content"         android:textSize="16sp" />     <TextView         android:layout_width="match_parent"         android:layout_height="match_parent"         android:gravity="center|top"         android:text="The Awesome Sliding Up Panel"         android:textSize="16sp" /> </com.sothree.slidinguppanel.SlidingUpPanelLayout>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值