我有一个问题。 LinearLayout上的垂直分隔线不会为我渲染。奇怪的是,它会在“预览”中呈现出来。但不是在应用程序运行时。实际上,只有在我将一个子项添加到LinearLayout的某个子项时,才会显示分隔线。
分隔符也适用于其他.xml文件但不适用于此文件。
任何帮助将不胜感激。
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/calendar_inner_container"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<FrameLayout
android:id="@+id/calendar_hour_col"
android:layout_width="@dimen/column_0"
android:layout_height="match_parent"
android:layout_alignParentStart="true"
android:background="@drawable/rounded_borders"
android:backgroundTint="@android:color/holo_blue_light"
android:gravity="center_horizontal"/>
<LinearLayout
android:id="@+id/calendar_events_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:gravity="center_horizontal"
android:layout_toEndOf="@+id/calendar_hour_container"
android:baselineAligned="false"
android:divider="@drawable/vertical_divider"
android:showDividers="middle">
<!-- The dividers here only show if the FrameLayout has children.
However if the FrameLayout is empty, no divider appears. -->
<FrameLayout
android:id="@+id/suday_col"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@color/mediumGray"/>
<!-- More days etc..-->
</LinearLayout>
</RelativeLayout>
</ScrollView>
就好像虽然LinearLayout中的FrameLayout是空的。但是因为我在ScrollView上设置fillViewPort = true
它应该填满整个屏幕吗?
答案 0 :(得分:0)
好吧所以我无法弄清楚为什么FrameLayout的高度为零所以我有一个可能适用于布局相似的人的解决方法。
由于calendar_hour_col FrameLayout将始终是正确的大小,我只需将其添加到LinearLayout以匹配其大小
android:layout_toEndOf="@+id/calendar_hour_col"
android:layout_alignTop="@+id/calendar_hour_col"
android:layout_alignBottom="@+id/calendar_hour_col"