Android ListView中根据内容(ListView的Item的数量)动态设定ListView的高度

listView.setLayoutParams(newLinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,400*listView.getCount()));

但是上面的代码是有问题的,当在不同像素的手机上使用上面代码时设定高度是不一样的,如何解决这一问题:

可以将设定的高度转化为像素:

publicintDpToPx(Contextcontext,floatnumber){floatscale=context.getResources().getDisplayMetrics().density;returnMath.round(scale);}

因此,在给ListView设定高度时,可采用:

listView.setLayoutParams(newLinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,DpToPx(content,400)*listView.getCount()));

常量400根据ListView的单个Item的高度决定,上面的代码可以对应不同像素的手机,给ListView动态设定高度。























更多相关文章

  1. ScrollView只能有一个子控件
  2. Android(安卓)改变当前屏幕背光亮度
  3. android顶部控件被输入法顶上去的解决办法
  4. Android中的分辨率小结
  5. Android(安卓)ListView拖动一条记录时,整体背景全黑的问题
  6. 关于Android的多种屏幕支持
  7. Android中动态调整ImageView的宽高比
  8. Android(安卓)OpenGL ES 播放 yuv420p文件
  9. Android图像处理(2):怀旧效果

随机推荐

  1. Android(安卓)ndk r4b开发环境搭建
  2. Android开发UI之android:gravity / andro
  3. 三、android百度地图覆盖物(android百度
  4. android系统中自带的图标大全
  5. android textview 行间距
  6. 关于Android开发的editText控件怎…
  7. Android菜单详解——理解android中的Menu
  8. Android交互式视觉设计控件二
  9. Android™ 1.6 android.R.drawable Icon
  10. android应用去掉title bar