如何在以下代码中以编程方式给定相等的空间(Java)?

时间:2019-05-23 13:35:56

标签: java android

我只是一个初学者。 我无法在商品名称和数量之间提供相等的空间。我希望项目名称占用可用空间。

我对使用setGravity和setColumnStretchable很累,但是我无法提供相等的空间。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1">

    <TableLayout
        android:id="@+id/Table_Text_View"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1">

        <TableRow>

            <TextView
                android:id="@+id/Item_Name"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="3"
                android:text="Item Name" />

            <TextView
                android:id="@+id/quantity"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="Quantity" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Item Purchase" />


        </TableRow>


    </TableLayout>

</ScrollView>

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <EditText
        android:id="@+id/Edit_Text_View1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:hint="Name of Item"
        android:imeOptions="actionNext"
        android:inputType="textMultiLine" />

    <EditText
        android:id="@+id/Edit_Text_View2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@id/Edit_Text_View1"
        android:hint="Quantity"
        android:imeOptions="actionDone"
        android:inputType="number" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:layout_toRightOf="@id/Edit_Text_View2"
        android:onClick="doneClick"
        android:text="Done" />

</RelativeLayout>

public void doneClick(View view) {
    EditText editTextView1 = (EditText) findViewById(R.id.Edit_Text_View1);
    String itemTextView1 = editTextView1.getText().toString();

    EditText editTextView2 = (EditText) findViewById(R.id.Edit_Text_View2);
    String itemTextView2 = editTextView2.getText().toString();

    TableLayout table = (TableLayout) findViewById(R.id.Table_Text_View);
    TableRow row = new TableRow(this);
    TableRow.LayoutParams lay = new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, TableRow.LayoutParams.WRAP_CONTENT);
    row.setLayoutParams(lay);
    TextView itemName = new TextView(this);
    TextView quantity = new TextView(this);
    itemName.setText(itemTextView1);
    quantity.setText(itemTextView2);
    row.addView(itemName);
    row.addView(quantity);
    table.addView(row);
}

我希望“项目名称”占据可用空间,并表明它与上一行和正在创建的行匹配。

0 个答案:

没有答案