viewpager左右滑动,viewpager禁止滑动

  viewpager左右滑动,viewpager禁止滑动

  安卓-支持-v4.jar,这是谷歌官方给我们提供的一个兼容低版本机器人设备的软件包,里面包囊了只有在Android3.0以上可以使用的api。而查看寻呼机就是其中之一,利用它我们可以做很多事情,从最简单的导航,到页面切换菜单等等。

  •本演示向大家演示查看寻呼机的使用,并在用户未滑动视角时,每隔5s钟自动切换到下一个查看(循环切换),而当用户有触控到视角时取消5s自动切换功能。并有指示器指示当前处于哪一个查看。

  导入安卓。支持。v4。查看。查看寻呼机;

  导入安卓。支持。v4。查看。查看寻呼机。onpagechangelistener

  导入安卓。查看。运动事件;

  导入安卓。查看。查看;

  导入安卓。查看。查看。ontouchlistener

  导入安卓。查看。查看组;

  导入安卓。查看。查看组。布局参数;

  导入安卓。小部件。imageview

  @SuppressLint(HandlerLeak )

  公共类主要活动扩展活动{

  private ImageView[]imageViews=null;

  private ImageView ImageView=null;

  私有视图寻呼机advPager=null

  私有原子整数what=新原子整数(0);

  私人的布尔值isContinue=true

  @覆盖

  创建时的公共void(绑定保存的实例状态){

  超级棒。oncreate(savedInstanceState);

  setContentView(r . layout。main);

  init view pager();

  adv pager=(view pager)findViewById(r . id。adv _ pager);

  视图组group=(视图组)findViewById(r . id。查看群);

  //这里存放的是四张广告背景

  列表视图建议=新数组列表视图

  ImageView img 1=新ImageView(this);

  img 1。setbackgroundresource(r . drawable。广告_默认_ 1);

  忠告。添加(img 1);

  ImageView img2=新ImageView(这个);

  img 2。setbackgroundresource(r . drawable。广告_默认_ 2);

  忠告。添加(img 2);

  ImageView img3=新ImageView(这个);

  img 3。setbackgroundresource(r . drawable。广告_默认_ 3);

  忠告。添加(img 3);

  ImageView im G4=新ImageView(this);

  img 4。setbackgroundresource(r . drawable。广告_默认);

  忠告。添加(img 4);

  //对图像视图进行填充

  imageViews=新的ImageView[advpics。size()];

  //小图标

  for(int I=0;我建议。size();i ) {

  图像视图=新imageView(这个);

  imageView.setLayoutParams(新LayoutParams(20,20));

  imageView.setPadding(5,5,5,5);

  imageViews[I]=imageView;

  if (i==0) {

  图像视图[我]。setBackgroundResource(r . drawable。banner _ Dian _焦点);

  }否则{

  图像视图[我]。setBackgroundResource(r . drawable。banner _ Dian _模糊);

  团体。addview(imageViews[I]);

  advPager.setAdapter(新AdvAdapter(advPics));

  高级寻呼机。setonpagechangelistener(new GuidePageChangeListener());

  高级寻呼机。setontouchlistener(new OnTouchListener(){

  @覆盖

  公共布尔onTouch(视图v,运动事件事件){

  switch (event.getAction()) {

  案例运动事件。动作_向下:

  案例运动事件。动作_移动:

  isContinue=false

  打破;

  案例运动事件。行动_行动:

  isContinue=true

  打破;

  默认值:

  isContinue=true

  打破;

  返回错误的

  新线程(新Runnable() {

  @覆盖

  公共无效运行(){

  while (true) {

  if (isContinue) {

  视图处理程序。senemptymessage(什么。get());

  什么选项();

  }).start();

  public void destroyItem(View arg0,int arg1,Object arg2) {

  ((ViewPager) arg0).删除视图(视图。get(arg 1));

  @覆盖

  公共void完成更新(视图参数0){

  @覆盖

  public int getCount() {

  返回视图。size();

  @覆盖

  公共对象实例化项目(View arg 0,int arg1) {

  ((ViewPager) arg0).addView(views.get(arg1),0);

  返回视图。get(arg 1);

  @覆盖

  公共布尔值isViewFromObject(视图arg0,对象arg1) {

  返回arg0==arg1

  @覆盖

  公共void还原状态(Parcelable arg 0,ClassLoader arg1) {

  @覆盖

  公共Parcelable saveState() {

  返回空

  @覆盖

  公共void开始更新(视图参数0){

  }

  2.布局文件

  ?可扩展标记语言版本=1.0 编码=utf-8 ?

  线性布局xmlns:Android= http://模式。安卓。 com/apk/RES/Android

  Android:layout _ width= fill _ parent

  Android:layout _ height= fill _ parent

  安卓:方向=垂直

  相对布局

  Android:layout _ width= wrap _ content

  Android:layout _ height= wrap _ content

  安卓:方向=垂直

  !-查看寻呼机是一个控件-

  安卓。支持。v4。查看。查看寻呼机

  android:id=@ id/adv_pager

  Android:layout _ width= fill _ parent

  android:layout_height=160dp

  /安卓。支持。v4。查看。查看寻呼机

  线性布局

  android:id=@ id/viewGroup

  Android:layout _ below= @ id/adv _ pager

  Android:layout _ width= fill _ parent

  Android:layout _ height= wrap _ content

  Android:layout _ margin top=-25px

  安卓:重力=右

  安卓:方向=水平

  /线性布局

  /RelativeLayout

  /线性布局

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: