ListView扩展
AbsListView,这又
AdapterView扩展了视图组。因此,的所有子项
ListView都将添加到中
ViewGroup。因此,要设置布局参数,可以在为设置布局参数时使用ViewGroup.LayoutParam
listLayout。
或者尝试
AbsListView.LayoutParams设置布局参数
listLayout
请尝试一下,让我知道它是否有效。
以下代码工作正常。
public class MainActivity1 extends Activity { String[] wordlist = new String[] { "a", "b", "c" }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ListView list = new ListView(this); list.setAdapter(new MyAdapter(this, wordlist)); setContentView(list); } private class MyAdapter extends ArrayAdapter<String> { public MyAdapter(Context context, String[] strings) { super(context, -1, -1, strings); } @Override public View getView(int position, View convertView, ViewGroup parent) { LinearLayout listLayout = new LinearLayout(MainActivity1.this); listLayout.setLayoutParams(new AbsListView.LayoutParams( AbsListView.LayoutParams.WRAP_CONTENT, AbsListView.LayoutParams.WRAP_CONTENT)); listLayout.setId(5000); TextView listText = new TextView(MainActivity1.this); listText.setId(5001); listLayout.addView(listText); listText.setText(super.getItem(position)); return listLayout; } }}问题在于,默认情况下,与Eclipse导入
ViewGroup.LayoutParams不兼容的Eclipse导入
AbsListView.LayoutParams需要用于设置从
getView()方法返回的视图的布局参数。
请检查,让我知道如何进行。



