【发布时间】:2018-03-25 19:45:53
【问题描述】:
所以我想做的是根据单击按钮的次数创建一个 textView 和 editText。格式是这样的
我在这里想要做的是,每当单击“CLICK”按钮时,都应该添加一个新的 PlainText 和 Textview。我该怎么做?
【问题讨论】:
标签: android android-layout button textview
所以我想做的是根据单击按钮的次数创建一个 textView 和 editText。格式是这样的
我在这里想要做的是,每当单击“CLICK”按钮时,都应该添加一个新的 PlainText 和 Textview。我该怎么做?
【问题讨论】:
标签: android android-layout button textview
好吧,您必须以编程方式执行此操作,但具体如何执行这一切都取决于您的 XML 布局是如何定义的。我会建议这样的事情......
public void addStuff(LinearLayout parentLayout){
LinearLayout master = new LinearLayout(getActivity());
master.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.WRAP_CONTENT));
master.setWeightSum(2f);
master.setOrientation(LinearLayout.HORIZONTAL);
TextView textView = new TextView(getActivity());
textView.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.WRAP_CONTENT, 1f));
EditText editText = new EditText(getActivity());
editText.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.WRAP_CONTENT, 1f));
master.addView(textView);
master.addView(editText);
parentLayout.addView(master);
}
您需要根据您的布局获取您的 parentLayout。 LayoutParams 中的 1f 代表 layout_weights。 master的2f是一个权重总和。由于您将主布局设置为水平方向,因此 TextView 和 EditText 最终将位于同一行。由于 1f + 1f = 2f,这意味着 TextView 和 EditText 在同一行将具有相同的宽度。
【讨论】: