我正在尝试使用java在一个微调器的onItemSelected事件上向LinearLayout添加一个新的微调器。这是我的代码:
seriesspinner=(Spinner) findViewById(R.id.series_spinner);
seriesspinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View item,
int position, long id) {
// TODO Auto-generated method stub
View dynamicPlace=findViewById(R.id.dynamic_spinners_layout);
String selectedItem=parent.getItemAtPosition(position).toString().toLowerCase();
((LinearLayout)dynamicPlace).removeAllViews();
if(selectedItem.equalsIgnoreCase("futures")){
Spinner expiryMonthSpinner=new Spinner(getApplicationContext());
expiryMonthSpinner.setLayoutParams(new LayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT)));
ArrayAdapter<String> expirymonth=new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_spinner_dropdown_item, getResources().getStringArray(R.array.expiry_month_array));
expiryMonthSpinner.setAdapter(expirymonth);
Toast.makeText(getApplicationContext(), selectedItem, Toast.LENGTH_LONG).show();
((LinearLayout)dynamicPlace).addView(expiryMonthSpinner);
}
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
但是这件事没有用。请帮忙。
答案 0 :(得分:0)
更改seriesspinner.setOnItemSelectedListener(new OnItemSelectedListener() {
到
seriesspinner.setOnItemSelectedListener(new View.OnItemSelectedListener() {
答案 1 :(得分:0)
我目前没有手动编译器,但可能是视图资源错误。以下内容。 simple_spinner_item和simple_spinner_dropdown_item需要改变
Spinner expiryMonthSpinner=new Spinner(...)
ArrayAdapter<String> expirymonth=new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_spinner_item, getResources().getStringArray(R.array.expiry_month_array));
expiryMonthSpinner.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
答案 2 :(得分:0)
问题出在我的布局高度上,这就是布局没有显示的原因。