在Android Studio中的EditText构造函数的参数中放入什么?

时间:2017-07-05 21:03:09

标签: java android xml android-studio grid-layout

我还不熟悉Android Studio,我想通过创建一个包含所需行和列的GridLayout来测试一些东西,并用EditTexts填充它。但是我遇到了一个问题,我不知道在EditText构造函数中将什么作为参数放置。 这是下面的java代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    //The numbers WILL vary but this is just a test
    int rows = 3;
    int columns = 4;

    GridLayout gd = (GridLayout) findViewById(R.id.grid1);
    gd.setRowCount(rows);
    gd.setColumnCount(columns);
    EditText edt;

    for(int r = 0; r < rows; r++)
    {
        for(int c = 0; c < columns; c++)
        {
            //What to put in the parameters in this code below?
            edt = new EditText();
            gd.addView(edt);
        }
    }
}

这是XML:

<GridLayout
        android:id="@+id/grid1"
        android:layout_width="368dp"
        android:layout_height="495dp"
        tools:layout_editor_absoluteX="8dp"
        tools:layout_editor_absoluteY="8dp">

</GridLayout>

我查看了EditText的构造函数,发现需要Context,但是如何将其放在那里?如果这不是正确的方法,请以正确的方式告诉我。

2 个答案:

答案 0 :(得分:1)

每个活动都是一个上下文。对于Views,您可以传入您所在的Activity或父的Context(通过getContext()),具体取决于更方便的内容。这里通常是活动,所以你传入这个。

答案 1 :(得分:0)

首先使用findviewbyId作为edittext,然后对该编辑文本对象使用set text

例如 EditText edit =(EditText)findViewById(R.id.edit_id); edit.setText( “ABC”);