展会信息港展会大全

关于使用ViewPager和LayoutInflater的出现问题
来源:互联网   发布日期:2015-10-02 21:11:51   浏览:1715次  

导读:问题如下:1. ViewPager应该怎么配?(仿微信的功能引导页)* 需要一个布局,布局里面有android.support.v4.view.ViewPager,还有几个代表点(用X...

问题如下:

1. ViewPager应该怎么配?(仿微信的功能引导页)

*需要一个布局,布局里面有android.support.v4.view.ViewPager,还有几个代表点(用XML实现drawable,目的是切换不同颜色的点)的ImageView

*需要自定义适配器继承PagerAdapter,实现getCount, isViewFromObject, destroyItem, instantiateItem这几个方法,传入的是List<View> pageViews

*Activity里面定义并获取List<View>(装page view,每个page都是一个XML布局,需要用LayoutInflater来获取), List<ImageView>(装dot view),获取ViewPager,实例化Adapter,viewPager.setAdapter,viewPager.setOnPageChangeListener(这个要在onPageSelected实现改变点颜色的功能)

2. LayoutInflater明明没有用错,XML也没错,为什么还报android.view.InflateException: Binary XML file line #8: Error inflating class的错误呢?

报错的地方是这里:

[java]

private List<View> getViews(){

LayoutInflater inflater = this.getLayoutInflater();//反射

List<View> views = new ArrayList<View>();

View view1 = inflater.inflate(R.layout.intro_page_one, null);//这里报错

views.add(view1);

View view2 = inflater.inflate(R.layout.intro_page_two, null);

views.add(view2);

return views;

}

private List<View> getViews(){

LayoutInflater inflater = this.getLayoutInflater();//反射

List<View> views = new ArrayList<View>();

View view1 = inflater.inflate(R.layout.intro_page_one, null);//这里报错

views.add(view1);

View view2 = inflater.inflate(R.layout.intro_page_two, null);

views.add(view2);

return views;

}用了三种方法获取LayoutInflater,结果还是一样#获取LayoutInflater三种方式#

其实,后面还有报OutOfMemoryError,怎么可能!我就换了几张图(原来的图都是700K,换30K的图),结果显示正常!!!!

调用这个反射,是因为要获取的Layout不是setContentView里面的那个Layout。

3. 如何实现第一次安装APP的时候,进入欢迎页,停顿3秒,进入引导页,点击确定,进入APP;

之后启动APP,进入欢迎页,不会进入引导页,直接进入APP;

在APP的某个按钮点击帮助,会重启APP,进入欢迎页,进入引导页,进入APP?

赞助本站

人工智能实验室

相关热词: android开发 教程

相关内容
AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港