如何让安卓(Android)子控件超出父控件的范围显示
程序员文章站
2024-03-31 19:20:28
先来看一张预览图:
废话不多说,直接上代码:
先来看一张预览图:
废话不多说,直接上代码:
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:clipchildren="false"> <imageview android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginbottom="60dp" android:background="@mipmap/www" /> <linearlayout android:id="@+id/ll_bottom" android:layout_width="match_parent" android:layout_height="60dp" android:layout_alignparentbottom="true" android:background="#f8549d" android:elevation="10dp" android:orientation="horizontal"> <relativelayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_gravity="bottom" android:layout_weight="1"> <imageview android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerinparent="true" android:src="@mipmap/ic_launcher" /> </relativelayout> <relativelayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_gravity="bottom" android:layout_weight="1"> <imageview android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerinparent="true" android:src="@mipmap/ic_launcher" /> </relativelayout> <relativelayout android:layout_width="70dp" android:layout_height="70dp" android:layout_gravity="bottom" android:background="@drawable/bottom_bg_shape"> <imageview android:layout_width="30dp" android:layout_height="30dp" android:layout_centerinparent="true" android:src="@mipmap/icon_go" /> </relativelayout> <relativelayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_gravity="bottom" android:layout_weight="1"> <imageview android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerinparent="true" android:src="@mipmap/ic_launcher" /> </relativelayout> <relativelayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_gravity="bottom" android:layout_weight="1"> <imageview android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerinparent="true" android:src="@mipmap/ic_launcher" /> </relativelayout> </linearlayout> </relativelayout>
这张图呢是我刚刚做的,效果是参考了酷狗音乐播放器来完成的,我想说明重点在底部的导航栏:如图
再来一张反效果预览图:
如何使得蓝色圆形的播放键的显示越过粉色的范围。当然经过合理的布局是可以达到这样的效果的,但是却有更简单的方法。也就是在根布局的属性中加入一个来自android自身提供的属性:
android:clipchildren="false"
属性解释和说明:
1、android:clipchildren的意思:是否限制子view在其范围内
2、可以通过android:layout_gravity控制超出的部分如何显示。
3、只需在根节点设置android:clipchildren为false即可,默认为true
总结
以上就是如何让安卓(android)子控件超出父控件的范围显示出来的全部内容,大家学会了吗?希望本文可以帮助到各位。