当前位置: 首页 > news >正文

徐州网站开发设计公司电话淘宝直通车推广怎么收费

徐州网站开发设计公司电话,淘宝直通车推广怎么收费,广东东莞电子厂,坐什么网站能用到html5效果图#xff1a; 大家在写项目的过程中常常会碰到须要实现Viewpager里面载入几张图片来循环自己主动轮播的效果#xff0c;假设不封装一下的话代码分散在activity里面会显得非常乱。并且也不利于我们下次复用#xff0c;所以这里我把viewpager的相关代码抽取出来放在了一个… 效果图 大家在写项目的过程中常常会碰到须要实现Viewpager里面载入几张图片来循环自己主动轮播的效果假设不封装一下的话代码分散在activity里面会显得非常乱。并且也不利于我们下次复用所以这里我把viewpager的相关代码抽取出来放在了一个类里面使用的时候仅仅须要new 这个对象就可以。直接看代码 MyViewPager.java类在activity中仅仅须要在初始化数据的时候增加MyViewPager myViewPagernew MyViewPager(this)这段代码就ok。 package com.duora.bobge.duoradeliverly_version2.custom_view;import android.app.Activity; import android.os.Handler; import android.os.Message; import android.support.v4.view.ViewPager; import android.util.Log; import android.view.View; import android.widget.ImageView; import android.widget.LinearLayout;import com.duora.bobge.duoradeliverly_version2.R; import com.duora.bobge.duoradeliverly_version2.adapter.EventPageAdapter; import com.duora.bobge.duoradeliverly_version2.base.BaseConfig; import com.duora.bobge.duoradeliverly_version2.listener.NavigationPageChangeListener;import java.util.ArrayList;/*** Created by bobge on 15/8/10.*/ public class MyViewPager {private Activity activity;private ViewPager viewPager;private LinearLayout mViewPoints;private ArrayListView pageViews;private ImageView imageView;/** 将小圆点的图片用数组表示 */private ImageView[] imageViews;private Handler mHandler new Handler() {Overridepublic void dispatchMessage(Message msg) {switch (msg.what) {case BaseConfig.MSG_CHANGE_PHOTO:int index viewPager.getCurrentItem();viewPager.setCurrentItem(index 1);mHandler.sendEmptyMessageDelayed(BaseConfig.MSG_CHANGE_PHOTO,BaseConfig.PHOTO_CHANGE_TIME);break;}super.dispatchMessage(msg);}};public MyViewPager(Activity activity) {this.activity activity;findViewById(activity);addData();initPoint();}private void addData() {pageViews new ArrayListView();for (int i 0; i 5; i) {ImageView imageView new ImageView(activity);imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);//picasso载入图片switch (i){case 0:imageView.setBackgroundResource(R.mipmap.a);break;case 1:imageView.setBackgroundResource(R.mipmap.b);break;case 2:imageView.setBackgroundResource(R.mipmap.c);break;case 3:imageView.setBackgroundResource(R.mipmap.e);break;case 4:imageView.setBackgroundResource(R.mipmap.f);break;}pageViews.add(imageView);}}private void findViewById(Activity activity) {this.viewPager (ViewPager)activity.findViewById(R.id.viewPager_main);this.mViewPoints (LinearLayout)activity.findViewById(R.id.viewGroup);}//创建viewpager的那几个滑动的点private void initPoint() {// 创建imageviews数组大小是要显示的图片的数量imageViews new ImageView[pageViews.size()];// 加入小圆点的图片for (int i 0; i pageViews.size(); i) {imageView new ImageView(activity);// 设置小圆点imageview的參数LinearLayout.LayoutParams layoutParams new LinearLayout.LayoutParams(20, 20);layoutParams.setMargins(5, 0, 5, 0);imageView.setLayoutParams(layoutParams);// 创建一个宽高均为20 的布局// 将小圆点layout加入到数组中imageViews[i] imageView;// 默认选中的是第一张图片此时第一个小圆点是选中状态其它不是if (i 0) {imageViews[i].setBackgroundResource(R.mipmap.face_float_icon_on);} else {imageViews[i].setBackgroundResource(R.mipmap.face_float_icon);}// 将imageviews加入到小圆点视图组mViewPoints.addView(imageViews[i]);}// 设置viewpager的适配器和监听事件Log.i(test, pageViews.size() );viewPager.setAdapter(new EventPageAdapter(pageViews));viewPager.setOnPageChangeListener(new NavigationPageChangeListener(pageViews, imageViews));viewPager.setCurrentItem((pageViews.size()) * 50);if(pageViews.size()1){mHandler.sendEmptyMessageDelayed(BaseConfig.MSG_CHANGE_PHOTO, BaseConfig.PHOTO_CHANGE_TIME);}} } 它的滑动监听和适配器 NavigationPageChangeListener.java看命名应该就能知道这个类的作用了不多说。 package com.duora.bobge.duoradeliverly_version2.listener;import android.support.v4.view.ViewPager; import android.view.View; import android.widget.ImageView;import com.duora.bobge.duoradeliverly_version2.R;import java.util.ArrayList;/*** Created by bobge on 15/8/5.*/ //viewpager滑动监听 public class NavigationPageChangeListener implements ViewPager.OnPageChangeListener {private ArrayListView pageViews;/** 将小圆点的图片用数组表示 */private ImageView[] imageViews;public NavigationPageChangeListener(ArrayListView pageViews, ImageView[] imageViews) {this.pageViewspageViews;this.imageViewsimageViews;}Overridepublic void onPageScrollStateChanged(int arg0) {}Overridepublic void onPageScrolled(int arg0, float arg1, int arg2) {}Overridepublic void onPageSelected(int position) {//当页面切换时设置导航点的状态setPointStatus(position);}//设置导航点的状态private void setPointStatus(int position) {positionposition%pageViews.size();for (int i 0; i imageViews.length; i) {imageViews[position].setBackgroundResource(R.mipmap.face_float_icon_on);// 不是当前选中的page。其小圆点设置为未选中的状态if (position ! i) {imageViews[i].setBackgroundResource(R.mipmap.face_float_icon);}}}}EventPagerAdapter.java类是viewpager的适配器。instantiateItem方法做了一些处理。使事实上现无限循环。package com.duora.bobge.duoradeliverly_version2.adapter;import android.support.v4.view.PagerAdapter; import android.support.v4.view.ViewPager; import android.view.View;import java.util.ArrayList;/*** Created by bobge on 15/7/30.*/ public class EventPageAdapter extends PagerAdapter {private ArrayListView pageViews;public EventPageAdapter(ArrayListView pageViews) {this.pageViewspageViews;}// 销毁position位置的界面Overridepublic void destroyItem(View container, int position, Object object) {((ViewPager) container).removeView(pageViews.get(position%pageViews.size()));}// 获取当前窗口界面数Overridepublic int getCount() {return Integer.MAX_VALUE;}// 初始化position位置的界面Overridepublic Object instantiateItem(View v, int position) {try{//((ViewPager) arg0).addView(list.get(arg1),0);((ViewPager) v).addView((View)pageViews.get(position%pageViews.size()),0);}catch (Exception e) {// TODO: handle exception}return pageViews.get(position%pageViews.size());}Overridepublic boolean isViewFromObject(View v, Object arg1) {return v arg1;}Overridepublic void startUpdate(View arg0) {}Overridepublic int getItemPosition(Object object) {return super.getItemPosition(object);}} 布局custom_viewpager.xml ?xml version1.0 encodingutf-8? RelativeLayout xmlns:androidhttp://schemas.android.com/apk/res/androidandroid:layout_widthmatch_parentandroid:layout_heightmatch_parent!--带导航点的viewpager布局--android.support.v4.view.ViewPagerandroid:idid/viewPager_mainandroid:layout_widthmatch_parentandroid:layout_heightmatch_parent/LinearLayoutandroid:idid/viewGroupandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:layout_alignParentBottomtrueandroid:layout_centerHorizontaltrueandroid:layout_marginBottom20dpandroid:gravitycenter_horizontalandroid:orientationhorizontal /LinearLayout /RelativeLayout 在activity的布局中仅仅须要导入上面那个布局就可以 includelayoutlayout/custom_viewpagerandroid:idid/myViewPagerandroid:layout_widthmatch_parentandroid:layout_heightdimen/viewpager_height/ 转载于:https://www.cnblogs.com/blfbuaa/p/7053141.html
http://wiki.neutronadmin.com/news/353801/

相关文章:

  • 动漫网站怎么做的行唐县做网站电话
  • 网站不备案可以上线吗网页开发的流程或者步骤是什么
  • 烟台互网站建设公司名单花生壳盒子做网站服务器
  • 深圳网站设计公司如何大数据精准营销服务
  • 网站建设信息收集网站不用了怎么办
  • 遂昌赶街网站wordpress采集公众号图片
  • 国防教育网站建设说明书百度一下百度网页版
  • 大朗东莞网站建设vi设计作品
  • 我有一个域名怎么做网站国内大型游戏外包公司
  • 温州企业网站建设服务漯河做网站推广
  • 网站名注册视频模板在线制作网站
  • 网站框架搭建设计平台推广计划书模板范文
  • 企业网站怎么备案用js来做网站
  • seo网站建设做个电商平台需要哪些步骤
  • 建站系统下载泰安北京网站建设公司哪家好
  • 国外简约企业网站磁力链接 网站怎么做的
  • 龙岗网站建设价位微信公众号搭建微网站
  • 签订网站建设协议 注意事项海尔公司网站建设现状
  • 音乐网站开发的意义怎么制作网站链接手机
  • 网站建设归工商局管还是工信局管wordpress清除主题信息
  • 怎么用linux做网站跨境电商是什么意思
  • 网站设计流程及制作流程wordpress 远程 mysql
  • 网站首页做30个关键词wordpress主题怎么上传
  • 建设众筹网站盘锦做网站哪家好
  • 可以做水印的网站seo的实现方式
  • 陕西省交通建设集团公司门户网站手机网站 侧边栏导航
  • 合肥最好的网站建设公司排名qq钓鱼网站生成器手机版
  • 好玩的网站源码经营管理系统
  • 做网站公司做网站公司有哪些制作论坛类网站模板免费下载
  • 成都网站建设 培训学校网站制作应用