Android开发_viewpager作为header加入到listview
来源:互联网 发布:linux常用网络命令大全 编辑:程序博客网 时间:2024/05/19 05:38
需要将viewpager作为header加入到listview里,但是一直显示不出来,或者报异常,其实,关键点有3点:
1.需要在代码中设置控件的高与宽
2.设置viewpager的时候,绝对不能用WRAP_CONTENT,需要直接指定大小
3.设置长宽是,需要指定他的subclass,如setLayoutParams(new ListView.LayoutParams(ListView.LayoutParams.FILL_PARENT, 100));
总之关键代码就是viewPager.setLayoutParams(new ListView.LayoutParams(ListView.LayoutParams.FILL_PARENT, 100)); 设置长宽,不用WRAP_CONTENT,LayoutParams之前要指明父类是Listview
- public class MainActivity extends Activity {
- private ListView list;
- private static final int[] pics = { R.drawable.img0,
- R.drawable.img1, R.drawable.img2};
- final String[] mStrings = {"0","1","2","3","4","5","6"};
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- list = (ListView)findViewById(R.id.lstview);
- Button b = new Button(this);
- b.setText("aaa");
- list.addHeaderView(getListHeaderView(),null,false);
- list.addFooterView(b);
- list.setAdapter(new ArrayAdapter<String>(this,
- android.R.layout.simple_list_item_1, mStrings));
- }
- private View getListHeaderView(){
- LinearLayout.LayoutParams mParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,
- LinearLayout.LayoutParams.WRAP_CONTENT);
- ViewPager viewPager = null;
- View view = getLayoutInflater().inflate(R.layout.news_lstview_header, null);
- viewPager = (ViewPager)view.findViewById(R.id.news_layout_viewPager);
- viewPager.setLayoutParams(new ListView.LayoutParams(ListView.LayoutParams.FILL_PARENT, 100)); //这里的高绝对不能是WRAP_CONTENT
- List<View> list = new ArrayList<View>();
- for(int i=0;i<3;i++){
- ImageView imgView = new ImageView(this);
- imgView.setLayoutParams(mParams);
- imgView.setImageResource(pics[i]);
- list.add(imgView);
- }
- viewPager.setAdapter(new MyPagerAdapter(list));
- viewPager.setCurrentItem(0);
- return viewPager;
- }
- }
- Android开发_viewpager作为header加入到listview
- Android开发_ViewPager制作欢迎界面
- Listview加入Header后positon错误
- Android解决按钮加入到ListView控件中的点击冲突
- Android listview 加入context menu
- libusb 加入到 Android
- android ListView 动态添加header和footer
- Android开发之ListView,加入CheckBox(复选框),实现选择列表
- Android PopupWindow加入自定义圆角listview
- wsdl加入header部分
- android 将header / footer添加到RecyclerView
- 如何加入Android开发社区
- Android:Android ListActivity with a header or footer(为ListView添加header和footer)
- Android listView 去掉header和footer中的分割线
- android ListView 设置header和footer的问题
- android自定义listview实现header悬浮框效果
- android ListView 设置header和footer的问题
- android listview 在添加header时候 OnItemClickListener position 索引不正确
- Request读取中文数据乱码的原因,以及解决办法
- 备忘:Api查询网址
- [转载]C# 写Windows服务程序
- 解决全屏UI中输入法的问题(一)
- POJ 1703 Find them, Catch them
- Android开发_viewpager作为header加入到listview
- 一套非常适用权限系统快速开发框架源代码
- Life/Asia table struct copybook convert to java pojo automaticlly
- 经典回顾超炫酷阅读效果3D Book使用方法
- Algorithmic Implementation series(8) Implementation of Counting_Sort
- 均值、中值滤波、孤点检测
- 在linux使用RAR
- BAT
- java.sql.Date java.util.Date String 之间的转换