Android 将视图动态添加到ListView项不会';行不通

Android 将视图动态添加到ListView项不会';行不通,android,listview,android-listview,Android,Listview,Android Listview,我有ListView,它总是包含两个不同的子视图 现在我想使用第一个(position==0)。它是膨胀视图,包含图像视图和相对视图(必须包含标记) 在尝试将一些视图添加到第一个项目的RelativeLayout后,我看到它们被添加了,但变得不可见。方法RelativeLayout.getChildCount()返回正确的值,但添加的标记不可见 ListView适配器: @Override public View getView(int position, View view, ViewGro

我有
ListView
,它总是包含两个不同的子视图

现在我想使用第一个(position==0)。它是膨胀视图,包含
图像视图
相对视图
(必须包含标记)

在尝试将一些视图添加到第一个项目的
RelativeLayout
后,我看到它们被添加了,但变得不可见。方法
RelativeLayout.getChildCount()
返回正确的值,但添加的标记不可见

ListView适配器:

 @Override
public View getView(int position, View view, ViewGroup parent) {
    switch (position) {
        case 0:
            view = (RelativeLayout) LayoutInflater.from(act).inflate(R.layout.item_choose_color_picture, parent, false);
            ((ImageView) ((RelativeLayout) view).findViewById(R.id.item_choose_color_image)).setImageBitmap(bitmap);
            return view;
        case 1:
            view = (ImageView) LayoutInflater.from(act).inflate(R.layout.item_choose_color_palette, parent, false);
            return view;
    }
            return view;
}
第一个项目的布局(项目\选择\颜色\图片):

更新


当我从main_activity.xml对RelativeLayout执行同样的操作时,一切都正常。所有标记都添加到正确的位置。

我认为
填充\u parent
是不推荐的,您应该使用
匹配\u parent
。但这并不能解决问题,我没料到会这样做:p这就是为什么我没有将其作为答案发布。如果您要为位置0和1添加不同的视图,而不是列表中的其他视图,为什么不把它添加到上面的XML文件中呢?因为这是一个原型,将来会有很多像第一个一样的视图。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >

    <ImageView
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:id="@+id/item_choose_color_image"
            />

    <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:id="@+id/item_choose_color_abs"
            >

    </RelativeLayout>

</RelativeLayout>
itemRelative = (RelativeLayout) ((RelativeLayout) listView.getChildAt(0)).findViewById(R.id.item_choose_color_abs);
        RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
        layoutParams.topMargin = 20;
        layoutParams.leftMargin = 20;
        ImageView view = new ImageView(this);
        view.setImageDrawable(getResources().getDrawable(R.drawable.color_marker));
        view.setLayoutParams(layoutParams);
        itemRelative.addView(view, layoutParams);