我想创建一个 Listview
,它将水平地保存1到'n' nos的 TextView
数据,这个 Textview
数据和宽度大小将来自 DB
?我不知道如何用持有人动态设置 TextView
的宽度?提前致谢 .
@Override
public View getView(int position, View view, ViewGroup viewGroup) {
ViewHolder holder = new ViewHolder();
if (view == null) {
view = View.inflate(cntxts, R.layout.list_header_col, null);
String [] ColNmae= (String[]) objects.get(0);
int Width= Integer.parseInt(ColNmae[2].toString());
LinearLayout layout=new LinearLayout(cntxts);
// layout.setLayoutParams(new LinearLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT));
TextView Textview = new TextView(cntxts);
HorizontalScrollView hr = new HorizontalScrollView(cntxts);
for(int i=0;i<objects.size();i++) {
holder.Textview=new TextView(cntxts);
layout.setLayoutParams(new RelativeLayout.LayoutParams(Width,80));
layout.addView(holder.Textview);
}
hr.addView(layout);
view = hr;
view.setTag(holder);
} else {
holder = (ViewHolder) view.getTag();
}
notifyDataSetChanged();
final String[] objMain = (String[]) getItem(position);
holder.Textview.setText(objMain[0]);
return view;
}
3 回答
您的数据需要来自某个地方 . 要完成 Spinner ,您有以下选择:
将值放在布局文件中
放入代码
Build 自己的 Value 观
从数据库中检索它
试试这个,