Android GridView中Item宽高不正常的问题解决
2015-07-23 14:40
435 查看
我是在实现这个界面的时候遇到了这个问题
是什么问题呢?
可以看到布局写好是这个样子的,而那些Item的大小有些太小了
也许你说放图进去就好了
但是放一些小尺寸的图会显示的非常怪异
一开始想 应该是item_xxx.xml里头参数没写好吧?
于是去改Item布局的参数 ,试过指定px,fill parent都没有什么卵用。
那最后是怎么解决的呢?
我在搜了好久之后发现一句神评论:“关键在于adapter!”
一开始还不信,但我尝试在adapter代码里指定其宽高之后,就不得不承认这个事实了。
下面放代码:
主要是重新设置item布局的宽高参数。也可以用于动态修改Grid/ListView里面每个Item的宽高喔!
是什么问题呢?
可以看到布局写好是这个样子的,而那些Item的大小有些太小了
也许你说放图进去就好了
但是放一些小尺寸的图会显示的非常怪异
一开始想 应该是item_xxx.xml里头参数没写好吧?
于是去改Item布局的参数 ,试过指定px,fill parent都没有什么卵用。
那最后是怎么解决的呢?
我在搜了好久之后发现一句神评论:“关键在于adapter!”
一开始还不信,但我尝试在adapter代码里指定其宽高之后,就不得不承认这个事实了。
下面放代码:
@Override public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub ViewHolder holder = null; if(convertView == null){ convertView = inflater.inflate(R.layout.item_grid_questionset, null); //指定Item的宽高 DisplayMetrics dm = new DisplayMetrics(); ((Activity) context).getWindowManager().getDefaultDisplay().getMetrics(dm); int height = dm.heightPixels ;//高度 convertView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,height/5)); holder = new ViewHolder(); //findViewById...... holder.imageView = (ImageView) convertView.findViewById(R.id.img_questionset_item_grid); holder.textView = (TextView) convertView.findViewById(R.id.tv_questionset_item_grid); convertView.setTag(holder); }else{ holder = (ViewHolder)convertView.getTag(); } final QuestionSetInfo item = itemList.get(position); //界面刷新与设置监听器...... fb.display(holder.imageView, item.getCoverMapUrl(), bitmap, bitmap); holder.imageView.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent intent = new Intent(context,ExamEnterActivity.class); intent.putExtra("bean", item); context.startActivity(intent); } }); holder.textView.setText(item.getQuestionSetName()); return convertView; }
主要是重新设置item布局的宽高参数。也可以用于动态修改Grid/ListView里面每个Item的宽高喔!
相关文章推荐
- Android Google购买PHP服务器端验证(订阅购买和一次性购买)
- android开发入门笔记:AIDL简单入门
- android postDelayed方法实现定时器
- Android碎片第一期
- 出现Error inflating class android.support.v7.widget.RecyclerView错误的解决办法
- android 命令获取手机中项目数据库
- Android 获取当前资源对象的屏幕信息
- android基础知识之AIDL简单入门
- android基础知识之AIDL简单入门
- Android源码之陌陌源码
- Android Service 不被杀死并提高优先级
- Android中adb push和adb install的使用区别
- Android下载并安装APK
- android学习——应用界面编程
- Android Binder机制原理(史上最强理解,没有之一)
- 基于Ubuntu 15.04 LTS编译Android5.1.0源代码
- 【Android杂谈】安卓手机与传感器通信
- Android应用程序签名(官方文档中文版)
- Android Studio常见问题
- 启动Android Studio时,可能弹出“Fetching Android SDK component information”