Android动态单行布局

时间:2014-04-03 23:16:27

标签: android json android-layout

我正在尝试创建动态布局。我的布局是从JSON提供的。我需要做的是在一行中放置一个按钮和一个编辑文本字段。编辑文本字段应始终填充屏幕实际状态,按钮应仅为其文本宽度大小。该按钮可以放在编辑文本字段之前或之后。

Goal

代码明智我正在尝试下面:

for (int i = 0; i < jsonDataValue.size(); i++) {
                System.out.println(jsonDataValue.get(i));

                if (jsonDataViewType.get(i).toString().equals("editBox")) {
                    EditText editText = new EditText(context);
                    editText.setText(jsonDataValue.get(i));
                    editText.setWidth(LayoutParams.MATCH_PARENT);
                    editText.setHeight(LayoutParams.WRAP_CONTENT);
                    System.out.println("width: " + LayoutParams.MATCH_PARENT);
                    System.out.println("hight: " + editText.getHeight());
                    linearLayout.addView(editText);
                    System.out.println(linearLayout.getOrientation());
                }
                else if(jsonDataViewType.get(i).toString().equals("button")) {
                    Button button = new Button(context);
                    button.setText(jsonDataValue.get(i));
//                  button.setWidth(LayoutParams.WRAP_CONTENT);
                    linearLayout.addView(button);
                }
            }

我得到以下内容: getting

1 个答案:

答案 0 :(得分:1)

请尝试以下更新:



             if (jsonDataViewType.get(i).toString().equals("editBox")) {
                    EditText editText = new EditText(context);
                    editText.setText(jsonDataValue.get(i));
                    LinearLayout.LayoutParams params = new   LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
            params.weight = 1.0f;
            editText.setLayoutParams(params);
            }