我在我的应用程序中使用Spinner控件,而我的代码是
Spinner s1=new Spinner(this);
s1.setLayoutParams(new LayoutParams(100,30));
ArrayAdapter adapter=new ArrayAdapter(this, android.R.layout.simple_expandable_list_item_1);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
adapter.add("One");
adapter.add("Two");
adapter.add("Three");
s1.setAdapter(adapter);
这在linearLayout中工作正常。当我使用TableLayout中的代码时,控件不显示。我必须生成动态布局,所以我不使用XML部分,只通过Java代码我添加了控件。
TableLayout tl=new TableLayout(this);
TableRow tr=new TableRow(this);
tr.addView(s1);
tl.addView(tr);
除了Spinner之外,所有组件都被添加。
所以请任何人为此提供一些解决方案。
答案 0 :(得分:1)
现在使用以下命令将您的tl添加到ScrollView:
ScrollView sv = new Scrollview(this);
sv.addview(tl);
setContentview(sv);
它应该有用。
答案 1 :(得分:0)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.main);
ArrayList<HashMap<String, Object>> list = new ArrayList<HashMap<String, Object>>();
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("Name", "One");
map.put("Icon", R.drawable.icon);
list.add(map);
map = new HashMap<String, Object>();
map.put("Name", "Two");
map.put("Icon", R.drawable.icon);
list.add(map);
Spinner spin = (Spinner) findViewById(R.id.spin);
myAdapter adapter = new myAdapter(getApplicationContext(), list,
R.layout.list_layout, new String[] { "Name", "Icon" },
new int[] { R.id.name, R.id.icon });
spin.setAdapter(adapter);
}
private class myAdapter extends SimpleAdapter {
public myAdapter(Context context, List<? extends Map<String, ?>> data,
int resource, String[] from, int[] to) {
super(context, data, resource, from, to);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = getLayoutInflater().inflate(R.layout.list_layout,
null);
}
HashMap<String, Object> data = (HashMap<String, Object>) getItem(position);
((TextView) convertView.findViewById(R.id.name))
.setText((String) data.get("Name"));
((ImageView) convertView.findViewById(R.id.icon))
.setImageResource(R.drawable.icon);
return convertView;
}
}
使用上面的代码,您可以回答您的问题。 我希望这是有帮助的。