自定义LinearLayout未正确显示“内容”

时间:2018-01-18 17:35:46

标签: android android-linearlayout

我创建了一个自定义LinearLayout。当我填充内容时,内容显示在我的自定义LinearLayout之外。我希望放置在自定义LinearLayout内容中的元素显示在自定义LinearLayout内。

即:

<"i am the tag">"i am the content"</"im part of the tag">

在LinearLayout上放置在“内容”上的任何内容都会显示在布局内部。出于某种原因,这不适用于自定义LinearLayout。

我的XML文件

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/backgroundBase"
    android:orientation="vertical">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:gravity="center_vertical"
        android:padding="10dp">

        <com.obdgenie.programmer.Views.AppCardContainer
            android:layout_width="match_parent"
            android:layout_height="match_parent">
            <TextView
                android:text="Test"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

        </com.obdgenie.programmer.Views.AppCardContainer>

    </LinearLayout>

</ScrollView>

我的自定义类

public class AppCardContainer extends LinearLayout {

    public AppCardContainer(Context cont, @Nullable AttributeSet attrs){
        super(cont, attrs);

        setOrientation(LinearLayout.VERTICAL);
        LayoutInflater.from(cont).inflate(R.layout.a_card_container, this);

    }

}

当前结果 enter image description here

根据要求。 a_card_container XML

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:padding="3dp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginBottom="10dp"
    android:orientation="vertical"
    android:background="@drawable/myrect2"
    android:elevation="2dp"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="2dp"
        android:layout_marginRight="2dp"
        android:layout_marginTop="2dp"
        android:padding="5dp"
        android:orientation="horizontal"
        android:layout_gravity="center_horizontal"
        android:background="@drawable/myrect"
        android:elevation="2dp">

        <TextView
            android:id="@+id/aCardTitle"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:paddingBottom="3dp"
            android:text="@string/def"
            android:textColor="#f5f5f5" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="5dp"
        android:orientation="horizontal"
        android:layout_gravity="center_horizontal">

        <LinearLayout
            android:id="@+id/container_card"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:gravity="center"
            android:orientation="horizontal">

        </LinearLayout>
    </LinearLayout>
</LinearLayout>

请注意,我确实只有一个简单的LinearLayout,但仍然得到了相同的结果。

0 个答案:

没有答案