LinearLayout未显示

时间:2012-06-14 12:53:36

标签: android android-layout remoteview

我相信我的问题源于我使用权重和在不包含任何内容的LinearLayout之后的RelativeLayout ......我无法让它工作。

这是我想要完成的事情(专注于带有背景图像的中心区域)我通过将LinearLayout的背景设为图像得到这个...我不能用RemoteViews做到这一点: enter image description here

以下是我使用xml获得的内容: enter image description here

<LinearLayout 
            android:id="@+id/forecast_ll"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:orientation="horizontal"
            android:background="@drawable/transparent"
            android:layout_weight="4.5"
            android:weightSum="2">
            <RelativeLayout 
                android:id="@+id/widget_bg_rl"
                android:layout_width="match_parent"
                android:layout_height="match_parent">
            <ImageView
                android:id="@+id/widget_bg"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:scaleType="centerCrop" />
            <LinearLayout 
                android:id="@+id/current_ll"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                android:orientation="vertical"
                android:gravity="center_vertical"
                android:paddingLeft="10dp"
                android:layout_weight="1">
                <TextView
                    android:id="@+id/update_time_tv"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/at"
                    android:textSize="16dp"
                    android:textColor="@color/white"
                    />
                <TextView
                    android:id="@+id/current_temp_tv"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="-2dp"
                    android:text="35 F"
                    android:textSize="44dp"
                    android:textColor="@color/white"
                    android:includeFontPadding="false"
                    />
                <TextView
                    android:id="@+id/current_short_text_tv"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="-6dp"
                    android:text="partly cloudy"
                    android:textSize="16dp"
                    android:textColor="@color/white"
                    />
            </LinearLayout>
            <LinearLayout
                android:id="@+id/layout_divider"
                android:layout_width="1dip"
                android:layout_height="match_parent"
                android:layout_marginTop="10dp"
                android:layout_marginBottom="10dp"
                android:layout_gravity="center_vertical"
                android:background="@color/white"
                />
            <LinearLayout 
                android:id="@+id/extended_forecast_ll"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:orientation="vertical"
                android:layout_weight="1"
                android:weightSum="2">
                <LinearLayout 
                    android:id="@+id/day_one_ll"
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:orientation="horizontal"
                    android:layout_weight="1">
                    <LinearLayout
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical"
                        android:padding="8dp">
                        <ImageView
                            android:id="@+id/day_one_image"
                            android:layout_width="24dp"
                            android:layout_height="24dp"
                            android:src="@drawable/widget_icon"
                            android:layout_gravity="center_vertical"
                            android:layout_marginLeft="8dip"
                            />
                    </LinearLayout>
                   <LinearLayout
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:orientation="vertical"
                        android:layout_gravity="center_vertical">
                        <TextView
                            android:id="@+id/day_one_daytv"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="WED"
                            android:textColor="@drawable/white"
                            />
                        <TextView
                            android:id="@+id/day_one_hilo"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="155 / 125"
                            android:textColor="@drawable/white"
                            />
                    </LinearLayout>
                </LinearLayout>
                <LinearLayout
                    android:id="@+id/layout_divider"
                    android:layout_width="match_parent"
                    android:layout_height="1dp"
                    android:layout_marginLeft="10dp"
                    android:layout_marginRight="10dp"
                    android:layout_gravity="center_horizontal"
                    android:background="@color/white"
                    />
                <LinearLayout 
                    android:id="@+id/day_two_ll"
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:orientation="horizontal"
                    android:layout_weight="1">
                    <LinearLayout
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical"
                        android:padding="8dp">
                        <ImageView
                            android:id="@+id/day_two_image"
                            android:layout_width="24dp"
                            android:layout_height="24dp"
                            android:src="@drawable/widget_icon"
                            android:layout_gravity="center_vertical"
                            android:layout_marginLeft="8dip"
                            />
                    </LinearLayout>
                   <LinearLayout
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:orientation="vertical"
                        android:layout_gravity="center_vertical">
                        <TextView
                            android:id="@+id/day_two_daytv"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="WED"
                            android:textColor="@drawable/white"
                            />
                        <TextView
                            android:id="@+id/day_two_hilo"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="55 / 25"
                            android:textColor="@drawable/white"
                            />
                    </LinearLayout>
                </LinearLayout>
            </LinearLayout>
            </RelativeLayout>
        </LinearLayout>

2 个答案:

答案 0 :(得分:0)

你没有将任何物品放在RelativeLayout中,所以没有任何物品知道放在哪里。与LinearLayout不同,您需要告诉每个项目您希望它相对于其中的其他视图以及父项本身的位置。

您需要使用定位参数来完成此操作,例如:

android:layout_toRightOf="@id/aView"
android:layout_centerInParent="true"
android:layout_below="@id/aView"

等...

您应该阅读其他RelativeLayout对齐规则:http://developer.android.com/reference/android/widget/RelativeLayout.html

答案 1 :(得分:0)

以下是我调整后的xml布局...从最外面的LinearLayout中删除了权重和相关项:

    <LinearLayout 
        android:id="@+id/forecast_ll"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:orientation="horizontal"
        android:background="@drawable/transparent"
        android:layout_weight="4.5"
        >
        <RelativeLayout 
            android:id="@+id/widget_bg_rl"
            android:layout_width="match_parent"
            android:layout_height="match_parent">
        <ImageView
            android:id="@+id/widget_bg"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:src="@drawable/al_widgetbg_01_05"
            android:scaleType="centerCrop" />
        <LinearLayout 
            android:id="@+id/current_ll"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:orientation="vertical"
            android:gravity="center_vertical"
            android:paddingLeft="10dp"
            >
            <TextView
                android:id="@+id/update_time_tv"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/at"
                android:textSize="16dp"
                android:textColor="@color/white"
                />
            <TextView
                android:id="@+id/current_temp_tv"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="-2dp"
                android:text="35 F"
                android:textSize="44dp"
                android:textColor="@color/white"
                android:includeFontPadding="false"
                />
            <TextView
                android:id="@+id/current_short_text_tv"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="-6dp"
                android:text="partly cloudy"
                android:textSize="16dp"
                android:textColor="@color/white"
                />
        </LinearLayout>
        <LinearLayout
            android:id="@+id/layout_divider"
            android:layout_width="1dip"
            android:layout_height="match_parent"
            android:layout_marginTop="10dp"
            android:layout_marginBottom="10dp"
            android:background="@color/white"
            android:layout_centerHorizontal="true"
            />
        <LinearLayout 
            android:id="@+id/extended_forecast_ll"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:orientation="vertical"
            android:layout_toRightOf="@id/layout_divider"
            android:weightSum="2">
            <LinearLayout 
                android:id="@+id/day_one_ll"
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:orientation="horizontal"
                android:layout_weight="1">
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center_vertical"
                    android:padding="8dp">
                    <ImageView
                        android:id="@+id/day_one_image"
                        android:layout_width="48dp"
                        android:layout_height="48dp"
                        android:src="@drawable/widget_icon"
                        android:layout_gravity="center_vertical"
                        android:layout_marginLeft="8dip"
                        />
                </LinearLayout>
               <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    android:layout_gravity="center_vertical">
                    <TextView
                        android:id="@+id/day_one_daytv"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="WED"
                        android:textColor="@drawable/white"
                        />
                    <TextView
                        android:id="@+id/day_one_hilo"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="155 / 125"
                        android:textColor="@drawable/white"
                        />
                </LinearLayout>
            </LinearLayout>
            <LinearLayout
                android:id="@+id/layout_divider"
                android:layout_width="match_parent"
                android:layout_height="1dp"
                android:layout_marginLeft="10dp"
                android:layout_gravity="center_horizontal"
                android:background="@color/white"
                />
            <LinearLayout 
                android:id="@+id/day_two_ll"
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:orientation="horizontal"
                android:layout_weight="1">
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center_vertical"
                    android:padding="8dp">
                    <ImageView
                        android:id="@+id/day_two_image"
                        android:layout_width="48dp"
                        android:layout_height="48dp"
                        android:layout_gravity="center_vertical"
                        android:layout_marginLeft="8dip"
                        />
                </LinearLayout>
               <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    android:layout_gravity="center_vertical">
                    <TextView
                        android:id="@+id/day_two_daytv"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="WED"
                        android:textColor="@drawable/white"
                        />
                    <TextView
                        android:id="@+id/day_two_hilo"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="55 / 25"
                        android:textColor="@drawable/white"
                        />
                </LinearLayout>
            </LinearLayout>
        </LinearLayout>
        </RelativeLayout>
    </LinearLayout>