我正在开发一个带有ListView的Android应用程序。
我想以编程方式更改行高,例如第0行的高度为100,其他的则为200。
我正在写下以下代码,但是在“layoutParams.height = 100;”行遇到 NullPointerException 。
你能告诉我如何解决这个问题吗?
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (mInflater == null){
mInflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
if (null == convertView) {
convertView = mInflater.inflate(R.layout.list_detail, null);
}
if (imageLoader == null) imageLoader = AppController.getInstance().getImageLoader();
if(position==0){
ViewGroup.LayoutParams layoutParams = convertView.getLayoutParams();
layoutParams.height = 100;
convertView.setLayoutParams(layoutParams);
}
else{
ViewGroup.LayoutParams layoutParams = convertView.getLayoutParams();
layoutParams.height = 200;
convertView.setLayoutParams(layoutParams);
}
・・・
return convertView;
}
答案 0 :(得分:0)
在你的适配器xml中,更改父级的布局高度,你就可以了。