viewpager作为listview标题
我有一个列表视图。我可以添加任何视图作为标题。但当我尝试添加图像的viewpager时,我的应用程序将崩溃 我的viewpager大小也已设置 标题_view.xmlviewpager作为listview标题,listview,header,android-viewpager,Listview,Header,Android Viewpager,我有一个列表视图。我可以添加任何视图作为标题。但当我尝试添加图像的viewpager时,我的应用程序将崩溃 我的viewpager大小也已设置 标题_view.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:custom="http://schemas.android.com/tools">
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="150dp"
**strong text**android:layout_height="150dp"/>
</LinearLayout>
在列表视图片段中,我有以下代码
listfragment.java
公共类listfragment扩展listfragment实现AbsListView.OnScrollListener{
ViewPager viewPager;
ViewPagerAdapter adapter;
private String[] images= {
"url1","url2"};
Context contextSl = this.getActivity();
private listadapter newadp;
LayoutInflater inflater;
View headerView;
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
inflater = LayoutInflater.from(this.getActivity());
headerView = inflater.inflate(R.layout.header_view, null, false);
viewPager = (ViewPager) headerView.findViewById(R.id.pager);
adapter = new ViewPagerAdapter(contextSl, images);
newadp=new listadapter(getActivity(),model);
viewPager.setAdapter(adapter);
getListView().addHeaderView(headerView);
AbsListView.LayoutParams headerViewParams = new
AbsListView.LayoutParams(Const.width, 400);
headerView.setLayoutParams(headerViewParams);
setListAdapter(newadp);
getListView().setOnScrollListener( this);
getListView().setDivider(null);
getListView().setDividerHeight(16);
}
////////////////////
public class ViewPagerAdapter extends PagerAdapter {
Context c;
String images[];
LayoutInflater inflater;
public ViewPagerAdapter(Context c, String[] imagePaths) {
this.images = imagePaths;
this.c = c;
}
@Override public int getCount() {
return this.images.length;
}
@Override public boolean isViewFromObject(View view, Object object) {
return view == (object);
}
@Override public Object instantiateItem(ViewGroup container, int position) {
inflater = (LayoutInflater)c.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View itemview = inflater.inflate(R.layout.viewpage_item, container,
false);
ImageView image;
image = (ImageView) itemview.findViewById(R.id.image);
try {
Picasso.with(c).
load(images[position])
.placeholder(R.mipmap.ic_launcher)
.error(R.mipmap.ic_launcher)
.into(image);
}
catch ( Exception Ex)
{ Toast.makeText(c, "catch", Toast.LENGTH_SHORT).show();
}
container.addView(itemview);
return itemview;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
((ViewPager)container).removeView((View) object);
}
}
ViewPager viewPager;
ViewPagerAdapter adapter;
private String[] images= {
"url1","url2"};
Context contextSl = this.getActivity();
private listadapter newadp;
LayoutInflater inflater;
View headerView;
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
inflater = LayoutInflater.from(this.getActivity());
headerView = inflater.inflate(R.layout.header_view, null, false);
viewPager = (ViewPager) headerView.findViewById(R.id.pager);
adapter = new ViewPagerAdapter(contextSl, images);
newadp=new listadapter(getActivity(),model);
viewPager.setAdapter(adapter);
getListView().addHeaderView(headerView);
AbsListView.LayoutParams headerViewParams = new
AbsListView.LayoutParams(Const.width, 400);
headerView.setLayoutParams(headerViewParams);
setListAdapter(newadp);
getListView().setOnScrollListener( this);
getListView().setDivider(null);
getListView().setDividerHeight(16);
}