【问题标题】:Dynamically add ImageView to LinearLayout将 ImageView 动态添加到 LinearLayout
【发布时间】:2014-05-25 14:09:27
【问题描述】:

我试图在运行时将ImageViews 添加到LinearLayout,但每次运行我的应用程序时,我什么也得不到。 logcat也没有报任何错误,我有点迷茫……

XML

    <LinearLayout
    android:id="@+id/guessHolders"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_below="@+id/copyrightText"
    android:background="@color/LightCyan"
    android:gravity="center"
    android:minHeight="45dp"
    android:orientation="horizontal"
    android:padding="5dp" >

</LinearLayout>

及其背后的代码:

    LinearLayout guessHolders = (LinearLayout)findViewById(R.id.guessHolders);      

    for(int i=0; i<Globals.mUser.getLevel().getSolution().length(); i++)
    {
        EmptyLetter tmp = new EmptyLetter(this);
        LinearLayout.LayoutParams parms = new LinearLayout.LayoutParams(40, 40, 1);
        tmp.setAdjustViewBounds(true);
        tmp.setLayoutParams(parms);
        currentEmpties.add(tmp);

        guessHolders.addView(tmp);
    }

    guessHolders.setOrientation(LinearLayout.HORIZONTAL);

我看到的只是一个空白的 LinearLayout。理想情况下,我希望图像视图是并排的,但我无法理解。

我检查了很多类似的问题,但没有一个答案有帮助。虽然我确实发现我需要 LayoutParams,这是我以前没有的,而且我必须从 Adding ImageView to the Layout programmatically 设置方向,但仍然没有任何显示。 :(

非常感谢任何帮助。谢谢!

【问题讨论】:

  • 您必须包含EmptyLetter 的代码,如果它扩展ImageView,那么什么时候设置源?您在 xml 中设置了 LinearLayout 的方向,因此无需再次设置。

标签: android imageview android-linearlayout


【解决方案1】:

更改您的线性布局。我希望您的 LINearLayout 在 RelativeLayout 内。 为什么 android:layout_alignParentLeft="true" android:layout_alignParentRight="true" 都被指定了?

【讨论】:

    猜你喜欢
    • 2017-07-08
    • 2017-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-01
    相关资源
    最近更新 更多