(1)java中输出格式控制:
System.out.printf(“共有:%.1f吨\n”,totalGoods);
(2)Adapter里面的常用方法:
- getCount()返回所有页面的数量
- isViewFromObject(View arg0,Object arg1)判断视图是否由对象产生
- instantiateItem(ViewGroup container,int position)实例化界面
- destroyItem(ViewGroup container,int position,Object object)销毁页面
- getPagerTitle(int position)返回页面标题信息
(3)添加像微信一样的每页的页卡PagerTabStrip
1.在xml的ViewPager中加入PagerTabStrip
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center" >
<android.support.v4.view.PagerTabStrip
android:id="@+id/tab"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</android.support.v4.view.PagerTabStrip>
</android.support.v4.view.ViewPager>
2.为ViewPager页卡设置标题
titleList=new ArrayList<String>();
titleList.add("第一页");
titleList.add("第二页");
titleList.add("第三页");
titleList.add("第四页");
3.在MyPagerAdapter中传入titleList
MyViewPagerAdapter adapter=new MyViewPagerAdapter(viewList, titleList);
在MyPagerAdapter中重载getPagerTitle
@Override
public CharSequence getPageTitle(int position) {
// TODO Auto-generated method stub
return titleList.get(position);
}
4.为了美观,为PagerTabStrip设置一些属性
tab=(PagerTabStrip) findViewById(R.id.tab);
tab.setBackgroundColor(Color.YELLOW);
tab.setTabIndicatorColor(Color.BLUE);
tab.setDrawFullUnderline(false);
tab.setTextColor(Color.RED);
PagerTitleStrip功能与PagerTabStrip基本一样
(4)通过Fragment作为ViewPager的数据源
1.创建fragList
fragList=new ArrayList<Fragment>();
fragList.add(new Fragment1());
fragList.add(new Fragment2());
fragList.add(new Fragment3());
fragList.add(new Fragment4());
2.创建适配器(用fragment加载support.v4包,这时该类需继承自FragmentActivity)
MyFragmentPagerAdapter adapter2=new MyFragmentPagerAdapter(getSupportFragmentManager(), fragList, titleList);
3.初始化ViewPager
pager=(ViewPager) findViewById(R.id.pager);
4.ViewPager加载适配器
pager.setAdapter(adapter2);
FragmentPagerAdapter 所有fragment一起存在一起销毁
FragmentStatePagerAdapter 有单个fragment的创建和销毁
ViewPager可以设置setOnPagerChangedListener();
(5)ViewFlipper:实现屏幕切换动画效果,android系统自带的一个多页面管理控件,它可以实现子界面的自动切换
为ViewFlipper加入View:
1. 静态导入:在layout布局文件中直接导入;
2. 动态导入:addView()方法
ViewFlipper常用方法:
1.setInAnimation:设置View进入屏幕时候使用的动画;
2.setOutAnimation:设置View退出屏幕时候使用的动画;
3.showNext:显示ViewFlipper里面的下一个View;
4.showPrevious:显示ViewFlipper里面的上一个View;
5.setFlipInterval:设置View之间切换的时间间隔;
6.startFlipping:开始切换所有View,切换循环进行;
7.stopFlipping:停止View切换
image.setImageResource(resId);//只能显示图片原宽高
image.setBackgroundResource(resId);//铺满屏幕
步骤:
1.初始化ViewFlipper:
flipper = (ViewFlipper) findViewById(R.id.flipper);
2.动态导入的方式为ViewFlipper加入子View
flipper.addView(getImageView(R.drawable.pic1));
flipper.addView(getImageView(R.drawable.pic2));
flipper.addView(getImageView(R.drawable.pic3));
flipper.addView(getImageView(R.drawable.pic4));
private ImageView getImageView(int resId) {
ImageView image = new ImageView(this);
image.setBackgroundResource(resId);
return image;
}
3.为ViewFlipper添加动画效果、切换时间间隔和开始播放
flipper.setBackgroundColor(Color.BLACK);
flipper.setFlipInterval(5000);
flipper.setInAnimation(this, R.anim.anim_in);
flipper.setOutAnimation(this, R.anim.anim_out);
flipper.startFlipping();