如何处理此类事件
How to handle this type of events
我想做一个这样的按钮。您可以在其中添加更多表格。
将生成这些类型的表格。
如何在 android 中创建和处理此类事件。此图像取自 ios,但我想在 android 中实现它。
提前致谢。抱歉英语不好。
按照以下步骤操作:
1) take hidden Layout.
2) Make one layout that include your Button , Editext.. etc.
3) When Click on Plus Button inflate layout & add it to hidden layout.
使用此代码:
LayoutInflater inflater = LayoutInflater.from(context);
View mView = (View) inflater.inflate(R.layout.custom_layout, null, false);
// Access button & Edittext like:
Button mButton= (Button)mView.findViewById(R.id.mButton);
EditText mEdiText= (EditText)mView.findViewById(R.id.mEditText);
LinearLayout hiddenLinear = (LinearLayout)findViewById(R.id.myLayout);
hiddenLinear.addView(mView);
编辑
要添加多个 EditText 使用 FOR Loop
LinearLayout hiddenLinear = (LinearLayout)findViewById(R.id.myLayout);
for (int i = 0, l <= 3; i++)
{
LayoutInflater inflater = LayoutInflater.from(context);
View mView = (View) inflater.inflate(R.layout.custom_layout, null, false);
// Access button & Edittext like:
Button mButton= (Button)mView.findViewById(R.id.mButton);
EditText mEdiText= (EditText)mView.findViewById(R.id.mEditText);
hiddenLinear.addView(mView);
}
& 要从所有视图获取所有 EditText 值,请使用此方法:
LinearLayout hiddenLinear = (LinearLayout)findViewById(R.id.myLayout);
findAllEdittexts(hiddenLinear);
ArrayList<EditText> array = new ArrayList<>();
private void findAllEdittexts(ViewGroup viewGroup) {
int count = viewGroup.getChildCount();
for (int i = 0; i < count; i++) {
View view = viewGroup.getChildAt(i);
if (view instanceof ViewGroup)
findAllEdittexts((ViewGroup) view);
else if (view instanceof EditText) {
EditText edittext = (EditText) view;
array.add(edittext);
}
}
}
我想做一个这样的按钮。您可以在其中添加更多表格。
将生成这些类型的表格。
如何在 android 中创建和处理此类事件。此图像取自 ios,但我想在 android 中实现它。
提前致谢。抱歉英语不好。
按照以下步骤操作:
1) take hidden Layout.
2) Make one layout that include your Button , Editext.. etc.
3) When Click on Plus Button inflate layout & add it to hidden layout.
使用此代码:
LayoutInflater inflater = LayoutInflater.from(context);
View mView = (View) inflater.inflate(R.layout.custom_layout, null, false);
// Access button & Edittext like:
Button mButton= (Button)mView.findViewById(R.id.mButton);
EditText mEdiText= (EditText)mView.findViewById(R.id.mEditText);
LinearLayout hiddenLinear = (LinearLayout)findViewById(R.id.myLayout);
hiddenLinear.addView(mView);
编辑
要添加多个 EditText 使用 FOR Loop
LinearLayout hiddenLinear = (LinearLayout)findViewById(R.id.myLayout);
for (int i = 0, l <= 3; i++)
{
LayoutInflater inflater = LayoutInflater.from(context);
View mView = (View) inflater.inflate(R.layout.custom_layout, null, false);
// Access button & Edittext like:
Button mButton= (Button)mView.findViewById(R.id.mButton);
EditText mEdiText= (EditText)mView.findViewById(R.id.mEditText);
hiddenLinear.addView(mView);
}
& 要从所有视图获取所有 EditText 值,请使用此方法:
LinearLayout hiddenLinear = (LinearLayout)findViewById(R.id.myLayout);
findAllEdittexts(hiddenLinear);
ArrayList<EditText> array = new ArrayList<>();
private void findAllEdittexts(ViewGroup viewGroup) {
int count = viewGroup.getChildCount();
for (int i = 0; i < count; i++) {
View view = viewGroup.getChildAt(i);
if (view instanceof ViewGroup)
findAllEdittexts((ViewGroup) view);
else if (view instanceof EditText) {
EditText edittext = (EditText) view;
array.add(edittext);
}
}
}