转载自:http://www.apkbus.com/android-73425-1-1.html
请借给我一直手,狠狠的抽我两嘴巴。我很欠但是我怕疼。。
做一个项目,需要让一个屏幕只显示2.5个item, 我item 中的元素是一个自己定制的view 控件,思路我是有的,就是在getview 中设置contentview 的高度,
但是实施起来就费劲了,自己底子不扎实,以前查询过类似的也是实现效果就好,没有细看,这次这么一个简单的做法废了我整整半天。后悔莫及,切记切记用过的东西
要复习 要理解。闲话不多说了上代码
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// Coordinates coor;
Vholder holder = new Vholder();
if (convertView == null) {
convertView = inflater.inflate(R.layout.coll_item, null);
holder.coor = (Coordinates) convertView.findViewById(R.id.colCoor);
convertView.setTag(holder);
} else {
holder = (Vholder) convertView.getTag();
}
AbsListView.LayoutParams lp = new AbsListView.LayoutParams(
LinearLayout.LayoutParams.FILL_PARENT,
(int) ((Utils.ScreenHeight - Utils.ScreenHeight / 5) / 2.5));
convertView.setLayoutParams(lp);
if (map != null && map.size() > 0) {
holder.coor.setAxisNamePrickleXY("", "cm/s", "", "m");
// 设置边距
holder.coor.setCoordinatesPadding(0, 0, 0, 0, 0, 0);
paint1.setColor(Color.RED);
holder.coor.addPoints((PointF[]) map.get(position), paint1);
holder.coor.setHammer(position + 1);
}
return convertView;
}
变大这部分就是主要的代码了,这几句代码的意思是让item 的宽度全屏 ,高度是我需要定制的。
注意:你xml中的控件要设置match-cont(我的xml中就这一个控件)