LinearLayout中的Imageview不会获取参数

时间:2014-06-09 07:12:32

标签: android parameters

为什么我的LinearLayout动态添加图像不会带参数?

    LinearLayout ImageView = (LinearLayout) findViewById(R.id.settings);
    LinearLayout ImageView2 = (LinearLayout) findViewById(R.id.settings2);
LinearLayout.LayoutParams imagev = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        imagev.topMargin=2;

ImageView image = new ImageView(getApplicationContext());
            image.setBackgroundResource(R.drawable.ic_action_discard);
            image.setId(Integer.parseInt(listitems.get(n).get("cbid")));
            image.setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(final View v) {
                    showpopup(v.getId());
                }
            });
            if (listitems.get(n).get("state").toString().equals("1")) {
                cb.setChecked(true);
                my_checked_layout.addView(cb,params);
                cb.setBackgroundColor(Color.argb(255, 184, 239, 220));
                cb.setTextColor(Color.rgb(255, 255, 255));
                ImageView2.addView(image, imagev);
            } else {
                cb.setChecked(false);
                cb.setBackgroundColor(Color.argb(255, 19, 202, 140));
                cb.setTextColor(Color.rgb(255, 255, 255));
                my_layout.addView(cb,params);
                ImageView.addView(image,imagev);
            }

my_checked_layout(cb,params);确实需要其他参数

deviceImage

我的XML,其中正在设置图像和复选框。 正在使用的部件都是线性布局,ID为父母和母亲。 parent2。

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<!-- Name Label -->

<LinearLayout
    android:id="@+id/scrollView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/name_label"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:paddingBottom="10dip"
        android:paddingTop="10dip"
        android:textColor="#43bd00"
        android:textSize="25dip"
        android:textStyle="bold" />
    <!-- green -->
    <!-- Email Label -->

    <TextView
        android:id="@+id/email_label"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textColor="#EB0505" />
    <!-- red -->


    <TextView
        android:id="@+id/list_label"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textColor="#FF00FF" />
    <!-- pink -->

    <LinearLayout
        android:id="@+id/Parent"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <LinearLayout
            android:id="@+id/test"
            android:layout_width="260dp"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:paddingLeft="10dp" />

        <LinearLayout
            android:id="@+id/settings"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:background="#13ca8c"
            />
    </LinearLayout>

    <ImageView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:paddingBottom="2dp"
        android:paddingLeft="5dp"
        android:paddingRight="5dp"
        android:paddingTop="2dp"
        android:scaleType="fitXY"
        android:src="@drawable/devider" />

    <LinearLayout
        android:id="@+id/Parent2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <LinearLayout
            android:id="@+id/checked"
            android:layout_width="260dp"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:paddingLeft="10dp"
             />

        <LinearLayout
            android:id="@+id/settings2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:background="#B8EFDC" />
    </LinearLayout>
</LinearLayout>

</ScrollView>

2 个答案:

答案 0 :(得分:0)

如果你想在LinearLayout.LayoutParams中添加保证金,你可以调用它的setMargin()方法。

示例:

setMargins(135, 176, 0, 0);

其中setMargins (int left, int top, int right, int bottom)

答案 1 :(得分:0)

<LinearLayout
        android:id="@+id/settings"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        />

修好了。