【问题标题】:How to create a spinner based on user input dynamically in android [closed]如何在android中根据用户输入动态创建微调器[关闭]
【发布时间】:2016-05-27 10:00:03
【问题描述】:
我需要根据 Edittext 值创建多个微调器。必须动态创建微调器..例如,如果我在 edittext 中给出值 5,则必须创建 5 微调器..如果有人知道告诉我
【问题讨论】:
标签:
android
android-edittext
android-spinner
【解决方案1】:
edtGiven=(EditText)findViewById(R.id.edtGiven);
btnSubmit=(Button)findViewById(R.id.btnSubmit);
final RelativeLayout layout=new RelativeLayout(this);
linear=(LinearLayout)findViewById(R.id.Linear);
StringBuffer spinnerBuffer = new StringBuffer();
final ArrayList<String> spinnerArray = new ArrayList<String>();
spinnerArray.add("1");
spinnerArray.add("3");
spinnerArray.add("4");
spinnerArray.add("5");
spinnerArray.add("6");
Spinner spinner = new Spinner(MainActivity.this);
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_spinner_item, spinnerArray); //selected item will look like a spinner set from XML
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(spinnerArrayAdapter);
btnSubmit.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//int change=Integer.parseInt(EdtValue);
int ff=-1;
if(edtGiven.getText().toString().length()>0)
{
ff=Integer.parseInt(edtGiven.getText().toString());
}
Toast.makeText(getApplicationContext(), "btn", 1000).show();
for(int i=0;i<ff;i++)
{
Toast.makeText(getApplicationContext(), "bfor", 1000).show();
Spinner spinner = new Spinner(MainActivity.this);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_spinner_item,spinnerArray);
spinner.setAdapter(adapter);
spinner.setPrompt("works");
linear.addView(spinner);
Toast.makeText(getApplicationContext(), "bottom", 1000).show();
}
}
});
}
最后我得到了答案,可以根据我从 edittext 的输入创建多个微调器