0

我有这样的东西:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <TableLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">

        <TableRow
            android:id="@+id/tableRow1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content">

            <TextView
                android:id="@+id/chooseBirthDateText"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="25dp"
                style="@style/mediumText"
                android:gravity="center_horizontal"
                android:text="@string/choose_birth_date" />

        </TableRow>
    </TableLayout>
</ScrollView>

我想添加更多行,但仅在一段时间后(比如说 10 秒)。我想先让这些行不可见,然后再让它们出现。但是这样我的scrollView不能按我的意愿工作(即使下面没有任何东西我也可以向下滚动 - 因为行是不可见的)

所以我想在第二个文件中添加我想要添加的行,在中间时间加载它们并在它们必须出现的那一刻添加它们在 tableRow1 之后。不幸的是,我不知道该怎么做(我说的是连接 2 个文件,而不是在 java 中创建第二个文件):/

4

2 回答 2

1

隐藏视图有两种模式:

  • INVISIBLE:这个视图是不可见的,但它仍然占用空间用于布局。
  • GONE:此视图是不可见的,并且它不占用任何空间用于布局目的。

http://developer.android.com/reference/android/view/View.html#setVisibility(int)

我想GONE会帮助你。

于 2013-02-12T12:01:35.347 回答
0

你应该这样尝试。让我知道它是否有用?

    for(int i = 0; i < _attributeList.size();i++){


        TableRow newRow = new TableRow(getApplicationContext());
        newRow.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, TableRow.LayoutParams.WRAP_CONTENT));

        newCheckBox = new CheckBox(getApplicationContext());

                TextView feeTypeText = new TextView(getApplicationContext());
                feeTypeText.setText(jsonObj.getString("feeType"));
                feeTypeText.setTextColor(Color.BLACK);
                feeTypeText.setTextSize(16f);
                feeTypeText.setTypeface(tf);

                TextView dueAmountText = new TextView(getApplicationContext());
                dueAmountText.setText(jsonObj.getString("dueAmount"));
                dueAmountText.setTextColor(Color.BLACK);
                dueAmountText.setTextSize(16f);
                dueAmountText.setTypeface(tf);

                TextView dueDateText = new TextView(getApplicationContext());
                dueDateText.setText(jsonObj.getString("dueDate"));
                dueDateText.setTextColor(Color.BLACK);
                dueDateText.setTextSize(16f);
                dueDateText.setTypeface(tf);

                newRow.addView(newCheckBox,(new LayoutParams(0,LayoutParams.WRAP_CONTENT,0.8f)));
                newRow.addView(feeTypeText,(new LayoutParams(0,LayoutParams.WRAP_CONTENT,0.8f)));
                newRow.addView(dueAmountText,(new LayoutParams(0,LayoutParams.WRAP_CONTENT,1.0f)));
                newRow.addView(dueDateText,(new LayoutParams(0,LayoutParams.WRAP_CONTENT,1.0f)));

属性表.addView(newRow); }

于 2013-02-12T12:07:36.307 回答