Android动态加载布局(xml)AddView()时LinearLayout中View的layout_weight属性无效的解决方法

本文探讨了在使用ListView时,底部合计行位置异常的问题。通过深入分析LayoutInflater与addView方法的工作机制,揭示了layout_weight属性失效的原因,并提供了解决方案。无论是手动设置LayoutParams,还是在addView调用时指定参数,都能有效调整合计行至底部。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#问题描述

在如下一段代码中,布局layoutResId中有使用LinearLayout的layout_weight属性,大概布局是一个listView,然后最底部显示一个合计行,因此在ListView中使用了layout_weight="1",layout_height="0dp",如果直接使用setContentView(layoutResId)来加载这个布局,显示没有任何问题,但是通过inflate然后addView(view)来加载,发现最底部的合计行不在最底部了,而是紧跟着ListView。

View view = this.getLayoutInflater().inflate(layoutResId, null);

layout.addView(view);

#原因分析

在左查右查上查下查,终于在addView()中发现问题,在addView(view),优先使用view的LayoutParams布局参数,若没有,则使用,AddView(view, LayoutParams)方法中传入LayoutParams,若仍然没有,则会创建一个默认的LayoutParams布局参数,而创建默认的这个LayoutParams参数的宽高都是wrap_content的,所以才导致了layout_weigth不生效的原因。

#解决方案

知道问题的原因了,解决就好办了,要么给addView()的参数view手动设置LayoutParams参数,要么在使用addView(view,LayoutParams)的这个添加方法,在添加时指定LayoutParams参数,问题就解决了。

 

特此记录一下,免得忘记了。若有说的不对的地方,欢迎各位大神指正。

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/main" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@mipmap/wallpaper1" android:orientation="vertical" tools:context=".activity.MainActivity"> <Button android:id="@+id/bt_start_float" android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" android:text="打开悬浮窗"> </Button> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_marginTop="15dp" android:layout_weight="0.5" android:gravity="center_vertical" android:orientation="horizontal" android:paddingLeft="12dp" android:paddingTop="6dp" android:paddingRight="12dp" android:paddingBottom="6dp"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/ic_logo" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:text="导播系统" android:textColor="@color/text_color" android:textSize="@dimen/text_16sp" android:textStyle="bold" /> <View android:layout_width="wrap_content" android:layout_height="0dp" android:layout_weight="1" /> <ImageView android:id="@+id/ic_zhuti" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/ic_zhuti" /> <ImageView android:id="@+id/ic_shumingshuo" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="14dp" android:background="@mipmap/ic_shumingshuo" /> <ImageView android:id="@+id/ic_tuichu" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="14dp" android:background="@mipmap/ic_tuichu" /> <ImageView android:id="@+id/ic_shezhi" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="14dp" android:background="@mipmap/ic_shezhi" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_marginLeft="12dp" android:layout_marginRight="12dp" android:layout_weight="1" android:orientation="horizontal"> <LinearLayout android:id="@+id/start_living" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:background="@mipmap/bg_ground11" android:gravity="center_vertical" android:orientation="vertical" android:padding="12dp"> </LinearLayout> <LinearLayout android:id="@+id/btn_shortcut" android:layout_width="0dp" android:layout_height="match_parent" android:layout_marginLeft="10dp" android:layout_weight="1" android:background="@mipmap/bg_ground111" android:gravity="center_vertical" android:orientation="vertical" android:padding="12dp"> </LinearLayout> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_margin="12dp" android:layout_weight="5.1" android:orientation="horizontal"> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:orientation="vertical"> <TextureView android:id="@+id/texture" android:layout_width="match_parent" android:layout_height="match_parent" android:keepScreenOn="true" android:visibility="gone" /> <com.cw.liveguidestation.view.layer.MultiLayerEditor android:id="@+id/layerEditor" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout> <LinearLayout android:id="@+id/ll_sound" android:layout_width="0dp" android:layout_height="match_parent" android:layout_marginStart="10dp" android:layout_weight="1" android:orientation="vertical" android:visibility="visible"> <androidx.recyclerview.widget.RecyclerView android:id="@+id/nav_rlv1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/bg_nav" android:orientation="horizontal" /> <FrameLayout android:id="@+id/fragment_container1" android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout> <LinearLayout android:id="@+id/ll_video" android:layout_width="0dp" android:layout_height="match_parent" android:layout_marginStart="10dp" android:layout_weight="1" android:orientation="vertical" android:visibility="gone"> <ScrollView android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal"> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/bg_de" android:gravity="center" android:orientation="horizontal"> <TextView android:id="@+id/jiweiChange" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="一号机位" android:textColor="@color/text_color" android:textSize="@dimen/text_12sp" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:background="@mipmap/ic_xiala1" /> </LinearLayout> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:background="@mipmap/btn_ok" android:gravity="center" android:paddingLeft="5dp" android:paddingTop="2dp" android:paddingRight="5dp" android:paddingBottom="2dp" android:text="确认" android:textColor="@color/text_color" android:textSize="@dimen/text_12sp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="15dp" android:background="@mipmap/btn_esc" android:gravity="center" android:paddingLeft="5dp" android:paddingTop="2dp" android:paddingRight="5dp" android:paddingBottom="2dp" android:text="停止" android:textColor="@color/text_color" android:textSize="@dimen/text_12sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center_vertical" android:orientation="horizontal"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/ic_bg" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:gravity="center" android:text="背景画面" android:textColor="@color/text_color" android:textSize="@dimen/text_12sp" /> <View android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="1" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/ic_h" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:background="@mipmap/ic_v" /> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:orientation="horizontal"> <LinearLayout android:id="@+id/llImageBg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="图片" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <ImageView android:id="@+id/ivImageBg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3dp" android:background="@mipmap/sel_l" android:visibility="invisible" /> </LinearLayout> <View android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="1" /> <LinearLayout android:id="@+id/llCameraBg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:gravity="center_horizontal" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="摄像头" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <ImageView android:id="@+id/ivCameraBg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3dp" android:background="@mipmap/sel_l" android:visibility="invisible" /> </LinearLayout> <View android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="1" /> <LinearLayout android:id="@+id/llVideoBg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:gravity="center_horizontal" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="视频" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <ImageView android:id="@+id/ivVideoBg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3dp" android:background="@mipmap/sel_l" android:visibility="invisible" /> </LinearLayout> <View android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="1" /> <LinearLayout android:id="@+id/llSlideBg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:gravity="center_horizontal" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="幻灯片" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <ImageView android:id="@+id/ivSlideBg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3dp" android:background="@mipmap/sel_l" android:visibility="invisible" /> </LinearLayout> </LinearLayout> <androidx.recyclerview.widget.RecyclerView android:id="@+id/rvContentBg" android:layout_width="match_parent" android:layout_height="wrap_content" /> <!-- <ImageView--> <!-- android:layout_width="wrap_content"--> <!-- android:layout_height="wrap_content"--> <!-- android:layout_marginTop="10dp"--> <!-- android:background="@mipmap/ic_add" />--> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center_vertical" android:orientation="horizontal"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/ic_bg" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:gravity="center" android:text="主播画面" android:textColor="@color/text_color" android:textSize="@dimen/text_12sp" /> <androidx.appcompat.widget.SwitchCompat android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" app:thumbTint="@color/text_color" app:trackTint="@color/switch_color" /> <View android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="1" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/ic_h" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:background="@mipmap/ic_v" /> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:orientation="horizontal"> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="摄像头" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3dp" android:background="@mipmap/sel_l" /> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:gravity="center_horizontal" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="数字人" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3dp" android:background="@mipmap/sel_l" /> </LinearLayout> </LinearLayout> <!-- <androidx.recyclerview.widget.RecyclerView--> <!-- android:layout_width="match_parent"--> <!-- android:layout_height="wrap_content"/>--> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:background="@mipmap/ic_add" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center_vertical" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="扣绿幕" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <androidx.appcompat.widget.SwitchCompat android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" app:thumbTint="@color/text_color" app:trackTint="@color/switch_color" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center_vertical" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="色相值" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <androidx.appcompat.widget.AppCompatSeekBar style="@style/CustomVerticalSeekBar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0/100" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center_vertical" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="平滑度" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <androidx.appcompat.widget.AppCompatSeekBar style="@style/CustomVerticalSeekBar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0/100" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center_vertical" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="相似度" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <androidx.appcompat.widget.AppCompatSeekBar style="@style/CustomVerticalSeekBar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0/100" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center_vertical" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="绿校对" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <androidx.appcompat.widget.AppCompatSeekBar style="@style/CustomVerticalSeekBar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0/100" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center_vertical" android:orientation="horizontal"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/ic_bg" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:gravity="center" android:text="前景画面" android:textColor="@color/text_color" android:textSize="@dimen/text_12sp" /> <androidx.appcompat.widget.SwitchCompat android:id="@+id/switchFg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" app:thumbTint="@color/text_color" app:trackTint="@color/switch_color" /> <View android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="1" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/ic_h" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:background="@mipmap/ic_v" /> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:orientation="horizontal"> <LinearLayout android:id="@+id/llIMageFg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_horizontal" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="图片" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <ImageView android:id="@+id/ivImageFg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3dp" android:visibility="invisible" android:background="@mipmap/sel_l" /> </LinearLayout> <View android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="1" /> <LinearLayout android:id="@+id/llCameraFg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:gravity="center_horizontal" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="摄像头" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <ImageView android:id="@+id/ivCameraFg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3dp" android:visibility="invisible" android:background="@mipmap/sel_l" /> </LinearLayout> <View android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="1" /> <LinearLayout android:id="@+id/llVideoFg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:gravity="center_horizontal" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="视频" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <ImageView android:id="@+id/ivVideoFg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3dp" android:visibility="invisible" android:background="@mipmap/sel_l" /> </LinearLayout> <View android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="1" /> <LinearLayout android:id="@+id/llSlideFg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:gravity="center_horizontal" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="幻灯片" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <ImageView android:id="@+id/ivSlideFg" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="3dp" android:visibility="invisible" android:background="@mipmap/sel_l" /> </LinearLayout> </LinearLayout> <androidx.recyclerview.widget.RecyclerView android:id="@+id/rvContentFg" android:layout_width="match_parent" android:layout_height="wrap_content" /> <!-- <ImageView--> <!-- android:layout_width="wrap_content"--> <!-- android:layout_height="wrap_content"--> <!-- android:layout_marginTop="10dp"--> <!-- android:background="@mipmap/ic_add" />--> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center_vertical" android:orientation="horizontal"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/ic_bg" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:gravity="center" android:text="音频输入" android:textColor="@color/text_color" android:textSize="@dimen/text_12sp" /> <View android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="1" /> </LinearLayout> <!-- <androidx.recyclerview.widget.RecyclerView--> <!-- android:layout_width="match_parent"--> <!-- android:layout_height="wrap_content"/>--> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:background="@mipmap/ic_add" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:text="请对着音频输入设备说话,检测声音" android:textColor="@color/text_color" android:textSize="@dimen/text_10sp" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:gravity="center_vertical" android:orientation="horizontal"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/ic_bg" /> <androidx.appcompat.widget.AppCompatSeekBar style="@style/CustomVerticalSeekBar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:layout_weight="1" /> </LinearLayout> </LinearLayout> </ScrollView> </LinearLayout> </LinearLayout> <SeekBar android:id="@+id/progressBar" android:layout_width="match_parent" android:layout_height="wrap_content" android:max="100" android:progress="0" android:visibility="gone" app:layout_constraintBottom_toTopOf="@+id/tvvv" tools:ignore="MissingConstraints" /> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_marginLeft="12dp" android:layout_marginRight="12dp" android:layout_weight="3.4" android:background="@mipmap/bg_ground2" android:orientation="vertical"> <androidx.recyclerview.widget.RecyclerView android:id="@+id/nav_rlv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:orientation="horizontal" /> <FrameLayout android:id="@+id/fragment_container" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout> </LinearLayout> 这个布局中的layerEditor添加全屏和非全屏效果
06-17
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/gradient_background"> <!-- 标题栏 --> <RelativeLayout android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?android:attr/actionBarSize" android:background="#44bd32"> <Button android:id="@+id/fanHui" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginStart="8dp" android:layout_marginEnd="8dp" android:background="@android:color/transparent" android:foreground="?android:attr/selectableItemBackground" android:text="返回" android:textColor="@android:color/white" android:textSize="16sp" /> </RelativeLayout> <!-- 底部按钮 --> <LinearLayout android:id="@+id/footer_buttons" android:layout_width="match_parent" android:layout_height="1dp" android:layout_alignParentBottom="true" android:background="@android:color/white" android:orientation="horizontal"> <!-- <Button--> <!-- android:id="@+id/device_location"--> <!-- android:layout_width="match_parent"--> <!-- android:layout_height="match_parent"--> <!-- android:gravity="center"--> <!-- android:text="设备定位"--> <!-- android:textSize="19sp"--> <!-- android:background="#44bd32"--> <!-- android:textColor="@android:color/white" />--> </LinearLayout> <RelativeLayout android:layout_width="match_parent" android:layout_height="380dp" android:layout_above="@id/footer_buttons" android:layout_below="@id/toolbar" android:layout_marginBottom="298dp" android:background="@android:color/black" android:padding="0dp"> <!-- 视频播放器 --> <VideoView android:id="@+id/video_player" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_centerInParent="true" /> <!-- 播放控制条 --> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:background="#99000000" android:orientation="horizontal" android:padding="8dp"> <ImageButton android:id="@+id/btn_play_pause" android:layout_width="40dp" android:layout_height="40dp" android:background="?attr/selectableItemBackgroundBorderless" android:src="@drawable/ic_play_sel" /> <SeekBar android:id="@+id/video_seekbar" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:layout_gravity="center_vertical" /> <TextView android:id="@+id/tv_time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:text="00:00/00:00" android:textColor="@android:color/white" android:textSize="14sp" /> </LinearLayout> </RelativeLayout> </RelativeLayout> 在视频播放器模块下面屏幕剩余位置添加一个放置缩略图的模块<ImageView android:layout_width="0dp" android:layout_height="wrap_content" app:layout_columnWeight="1" android:layout_margin="4dp" android:adjustViewBounds="true" android:contentDescription="萤石缩略图" android:src="@drawable/default_thumbnail" />
最新发布
06-27
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/gradient_background" tools:context="com.jd.projects.wlw.shuhai.ShuhaiSp"> <!-- <!– 顶部工具栏 –>--> <RelativeLayout android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#44bd32"> <Button android:id="@+id/back_button4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentStart="true" android:layout_marginStart="8dp" android:layout_marginTop="8dp" android:layout_marginEnd="8dp" android:layout_marginBottom="8dp" android:background="@android:color/transparent" android:contentDescription="返回上一页" android:foreground="?android:attr/selectableItemBackground" android:text="返回" android:textColor="@android:color/white" android:textSize="19dp" /> </RelativeLayout> <!-- 视频播放区域 --> <FrameLayout android:id="@+id/video_container" android:layout_width="match_parent" android:layout_height="90dp" android:layout_above="@+id/thumbnail_scrollview" android:layout_below="@id/toolbar" android:layout_marginTop="0dp" android:background="@android:color/black"> <!-- <ProgressBar--> <!-- android:id="@+id/video_loading"--> <!-- android:layout_width="wrap_content"--> <!-- android:layout_height="wrap_content"--> <!-- android:layout_gravity="center" />--> <VideoView android:id="@+id/video_view" android:layout_width="match_parent" android:layout_height="400dp" android:gravity="center" android:text="视频播放区域" android:textColor="@android:color/white" android:visibility="visible" /> </FrameLayout> <!-- 缩略图区域 --> <ScrollView android:id="@+id/thumbnail_scrollview" android:layout_width="match_parent" android:layout_height="290dp" android:layout_alignParentBottom="true" android:fillViewport="true"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <android.widget.GridLayout android:id="@+id/gridLayout" android:layout_width="match_parent" android:layout_height="match_parent" android:alignmentMode="alignBounds" android:columnCount="2" android:padding="8dp" android:rowCount="0" android:background="#ffffff" android:useDefaultMargins="true"> <ImageView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_columnWeight="1" android:layout_margin="4dp" android:adjustViewBounds="true" android:contentDescription="缩略图" android:src="@drawable/default_thumbnail" /> </android.widget.GridLayout> </LinearLayout> </ScrollView> </RelativeLayout>解决布局文件中<ImageView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_columnWeight="1" android:layout_margin="4dp" android:adjustViewBounds="true" android:contentDescription="缩略图" android:src="@drawable/default_thumbnail" />缩略图没有显示在<android.widget.GridLayout android:id="@+id/gridLayout" android:layout_width="match_parent" android:layout_height="match_parent" android:alignmentMode="alignBounds" android:columnCount="2" android:padding="8dp" android:rowCount="0" android:background="#ffffff" android:useDefaultMargins="true">这一模块中
06-27
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值