在EditText上设置columnWeight

时间:2017-06-29 09:35:08

标签: java android xml android-edittext

我在我的活动中使用GridLayout,并使用了几个EditText来填充网格。宽度和一切看起来都不错。现在我想将EditTexts动态添加到现有的GridLayout。但是我将XML属性转换为Java有一些问题。特别是我不知道如何设置columnWeight正确。

这是GridLayout:

<GridLayout
                android:id="@+id/cellGrid"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:columnCount="8"
                android:rowCount="5">
...
</GridLayout>

这是正确的XML EditTexts之一:

<EditText
                    android:layout_width="20dp"
                    android:layout_height="wrap_content"
                    android:layout_columnWeight="1"
                    android:layout_marginBottom="2dp"
                    android:layout_marginEnd="2dp"
                    android:background="@color/middelGrey"
                    android:inputType="numberDecimal"
                    android:textAlignment="center"
                    android:textSize="12dp" />

这就是我尝试在for循环中将EditTexts添加到Grid中的方法

for(int i=0; i < amountOfCells/2; i++){
        EditText editText = new EditText(getContext());

     editText.setBackgroundColor(getResources().getColor(R.color.middelGrey, null));
        editText.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL);

        LinearLayout.LayoutParams llp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT, 1f);
        llp.setMargins(0, 0, 2, 2);
        editText.setLayoutParams(llp);
        editText.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);
        editText.setWidth(20);
        editText.setHeight(wrap_content);
        gridLayout.addView(editText, i);
    }

但它看起来不像xml版本,我认为columnWeight设置不正确。

1 个答案:

答案 0 :(得分:2)

设置以下布局参数而不是您的:

v = df1['A'].unique() # Get the unique values
np.shuffle(v) # Shuffle them
v1,v2 = np.array_split(v,2) # Split the unique values into two arrays

可在此处找到:Link