以编程方式将图像添加到线性布局

Posted

技术标签:

【中文标题】以编程方式将图像添加到线性布局【英文标题】:Add images to linearlayout programmatically 【发布时间】:2015-02-01 11:56:09 【问题描述】:

我有一个HorizontalScrollView,其中有一个LinearLayout,我想以编程方式将多个图像添加到布局中,所有图像高度相同(约300dp)并包装内容。就像它们按比例安装在滚动区域中一样。 我的问题是加载视图时,滚动区域中只有一个图像,而其他图像通过滚动变得可见。 像 4 个图像一样思考,只有一个可见,周围有空白区域(第一个),但其他 3 个正确地依次添加。 这是我的代码

            <HorizontalScrollView
                android:id="@+id/gallery_scroll"
                android:layout_
                android:layout_ >

                <LinearLayout
                    android:id="@+id/gallery_layout"
                    android:layout_
                    android:layout_
                    android:orientation="horizontal" >

                </LinearLayout>
            </HorizontalScrollView>

以及添加功能:

for (final GalleryItem item : items) 
    ImageView iv = new ImageView(context);
    LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT
                                            , LayoutParams.MATCH_PARENT);

     param.setMargins(0, 0, 10, 0);
     iv.setLayoutParams(param);
     iv.setImageBitmap(item);
     layout.add(iv);

结果:

【问题讨论】:

【参考方案1】:

使用这个:

RelativeLayout.LayoutParams param = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT);

并尝试设置:

iv.setAdjustViewBounds(true);

【讨论】:

以上是关于以编程方式将图像添加到线性布局的主要内容,如果未能解决你的问题,请参考以下文章

在其线性布局垂直父Android中将以编程方式创建的单选按钮居中

将编程创建的视图垂直添加到滚动视图中(iOS 中的线性布局)

java 以编程方式创建线性布局

当以编程方式完成时,视图不会反映任何变化

将AdView添加到另一个下方的线性布局中不会显示任

如何使用线性布局添加背景图像作为根布局并具有嵌套线性布局