背景:
主界面有listView ,id是List_main,adapter是直接new出来的


-----------------------我是分割线---------------------------------
由于listview在中间,我想让三个item占满他,而listview的大小也是根据屏幕分辨率调的,我的办法是用inflate拿到adapter布局里面的高,然后用getLayoutParams().height=XX来改,后来我发现,值拿到了,也改了,log出来的值也是改过的值,但是界面上的高就是没变。


后来在某大神的博客找到方法


adapter这个类每在新建item的时候都会调用一次getView方法,我写了一个adapter继承自SimpleAdapter,然后再new我的这个adapter,在参数里面加一个值,给getview用
代码如下


adapter

package com.example.android_class;import java.util.List;import java.util.Map;import com.example.android_class.MainActivity;import android.content.Context;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.SimpleAdapter;public class MyAdapter extends SimpleAdapter {     int myh;public MyAdapter(Context context, List<? extends Map> data,int resource, String[] from, int[] to,int myh) {super(context, data, resource, from, to);this.myh=myh;}public View getView(int position, View convertView, ViewGroup parent) { View v = super.getView(position, convertView, parent);v.getLayoutParams().height=myh; return v;}}

activity

private void init_setAdapter() {List> l = new ArrayList>();Map m = new HashMap();m.put("main_adapter_img", R.drawable.week);m.put("main_adapter_textView", "本周数据");l.add(m);m = new HashMap();m.put("main_adapter_img", R.drawable.month);m.put("main_adapter_textView", "本月数据");l.add(m);m = new HashMap();m.put("main_adapter_img", R.drawable.year);m.put("main_adapter_textView", "本年数据");l.add(m);MyAdapter s = new MyAdapter(this,l,R.layout.activity_main_adapter,new String[]{"main_adapter_img","main_adapter_textView"},new int[]{R.id.main_adapter_img,R.id.main_adapter_textView},list_main.getLayoutParams().height/3);list_main.setAdapter(s);}

还有一个问题就是像素和dp的转换问题,以后再说。



禁止转载

更多相关文章

  1. 一句话锁定MySQL数据占用元凶
  2. android onSaveInstanceState方法
  3. 【Android】数据存储之Sharepreference
  4. Android(安卓)简单存储 SharedPreferencesUtils
  5. 浅析Android加载字体包及封装的方法
  6. Android与JS交互之基本
  7. 使用MediaPlayer播放声音的异常
  8. Android三种定时器的简单使用
  9. Android中Spinner下拉列表(使用ArrayAdapter和自定义Adapter实现)

随机推荐

  1. Android缩放图片Bitmap、Drawable
  2. Android(安卓)乱七八糟
  3. android progressbar 显示两个进度样式的
  4. 解决Android中No resource found that ma
  5. Android(安卓)EditText 多行,滚动条 等
  6. Android(安卓)UI布局中设置了fill_parene
  7. android 接听和挂断实现方式
  8. Android提示版本更新的实现
  9. Android(安卓)Recovery模式
  10. Android平台常见属性集合