- 浏览: 517419 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
tangyunliang:
大哥你太历害了谢谢
Android基于XMPP Smack Openfire开发IM【四】初步实现两个客户端通信 -
u013015029:
LZ,请问下,在// 添加消息到聊天窗口 , 这里获取Ed ...
Android基于XMPP Smack Openfire开发IM【四】初步实现两个客户端通信 -
endual:
怎么保持会话,我搞不懂啊
Android基于XMPP Smack Openfire开发IM【一】登录openfire服务器 -
donala_zq:
显示:[2013-11-30 11:50:36 - Andro ...
android-----------新浪微博 -
donala_zq:
哥,运行不了啊
android-----------新浪微博
第一个界面图:
[img]
[/img]
滑动过程中效果图:
[img]
[/img]
最后一个界面图:
[img]
[/img]
主Activity:
同志们,sorry,sorry,我的错,请吧//mCurrentViewID = currentID; 这个注释放开,要不手势的界面与Button的操控就不同步了
修改按钮位置(位于屏幕两边)效果图:
[img]
[/img]
这样的效果,请下第二个 rar
[img]
[/img]
滑动过程中效果图:
[img]
[/img]
最后一个界面图:
[img]
[/img]
主Activity:
package blog.csdn.net.liyulei316686082; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.opengl.Visibility; import android.os.Bundle; import android.support.v4.view.ViewPager; import android.support.v4.view.ViewPager.OnPageChangeListener; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.view.animation.AccelerateInterpolator; import android.widget.Button; import android.widget.Toast; public class ViewPagerDemoActivity extends Activity { /** Called when the activity is first created. */ private ViewPager mViewPager = null; private Button mLeft = null; private Button mRight = null; private static final int PAGER_NUM = 10;//10个页面 private int mCurrentViewID = 0; //当前页面 private int mMyDuration = 100; //持续时间 private FixedSpeedScroller mScroller; private YLeiPageAdapter mYLeiPageAdapter = null; private List<View> mListViews; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mViewPager = (ViewPager)findViewById(R.id.viewpager); mLeft = (Button)findViewById(R.id.left); mRight = (Button)findViewById(R.id.right); mLeft.setOnClickListener(mOnClickListener); mRight.setOnClickListener(mOnClickListener); mLeft.setVisibility(View.INVISIBLE); mListViews = new ArrayList<View>(); for(int i= 1; i<= PAGER_NUM; i++){ MyPagerView view = new MyPagerView(this, i); mListViews.add(view); } mYLeiPageAdapter = new YLeiPageAdapter(this, mListViews); mViewPager.setAdapter(mYLeiPageAdapter); mViewPager.setOnPageChangeListener(mOnPageChangeListener); /*主要代码段*/ try { Field mField = ViewPager.class.getDeclaredField("mScroller"); mField.setAccessible(true); //设置加速度 ,通过改变FixedSpeedScroller这个类中的mDuration来改变动画时间(如mScroller.setmDuration(mMyDuration);) mScroller = new FixedSpeedScroller(mViewPager.getContext(), new AccelerateInterpolator()); mField.set(mViewPager, mScroller); } catch (Exception e) { e.printStackTrace(); } } private OnClickListener mOnClickListener = new OnClickListener(){ @Override public void onClick(View v) { switch (v.getId()){ case R.id.left: if(mCurrentViewID > 0){ mCurrentViewID--; mViewPager.setCurrentItem(mCurrentViewID, true); Toast.makeText(getApplicationContext(), mCurrentViewID+"", 0).show(); mMyDuration -= 100; mScroller.setmDuration(1000); Log.i("TAG", "mCurrentViewID==="+mCurrentViewID); } break; case R.id.right: if(mCurrentViewID < PAGER_NUM-1){ mCurrentViewID++; mViewPager.setCurrentItem(mCurrentViewID, true); mMyDuration += 100; mScroller.setmDuration(1000); Log.i("TAG", "mCurrentViewID==="+mCurrentViewID); } break; } }}; private OnPageChangeListener mOnPageChangeListener = new OnPageChangeListener(){ @Override public void onPageScrollStateChanged(int arg0) { // TODO Auto-generated method stub } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { // TODO Auto-generated method stub } @Override public void onPageSelected(int currentID) { // TODO Auto-generated method stub //mCurrentViewID = currentID; if(currentID==0){ mLeft.setVisibility(View.INVISIBLE); } if(currentID!=0){ mLeft.setVisibility(View.VISIBLE); } if(currentID==mListViews.size()-1){ mRight.setVisibility(View.INVISIBLE); } if(currentID!=mListViews.size()-1){ mRight.setVisibility(View.VISIBLE); } }}; }
同志们,sorry,sorry,我的错,请吧//mCurrentViewID = currentID; 这个注释放开,要不手势的界面与Button的操控就不同步了
修改按钮位置(位于屏幕两边)效果图:
[img]
[/img]
这样的效果,请下第二个 rar
- ViewPagerDemo.rar (561.2 KB)
- 下载次数: 31
- ViewPagerDemo.rar (561.2 KB)
- 下载次数: 65
发表评论
-
Android中如何模拟一次点击(touch)事件
2014-05-06 10:41 0在Android中有时需要模拟某一个View的touch事件, ... -
Android程序Crash时的异常上报
2014-04-28 18:15 0http://blog.csdn.net/singwhatiw ... -
android程序中证书签名校验的方法
2014-04-28 17:58 1903android程序中证书签名校验的方法一 2013-02 ... -
MD5理解错了,哎
2014-03-17 14:14 0MD5只对数据加密是无法解密的,也就是说,你把100加密后,就 ... -
Android 获取网络时间
2014-03-12 11:42 2010Android 获取网络时间 在网上看到的最常见的方式有: ... -
SQLite清空表并将自增列归零
2014-03-05 18:02 1465SQLite清空表并将自增列归零 作者:Zhu Yanfeng ... -
Handler小看一下
2013-11-11 16:42 0android handler调用post方法还是阻塞 su ... -
Frame Animation小看一下
2013-10-12 16:30 721Demo运行效果图: 源码: -
动画小学一下
2013-10-12 16:14 692转自: http://www.eoeandroid.com/f ... -
Android 动画之ScaleAnimation应用详解
2013-10-12 15:49 958===============eoeAndroid社区推荐:= ... -
android开发中的一个工具类
2013-06-19 16:04 0package com.wanpu.login.dialog; ... -
android TextView怎么设置个别字体颜色并换行?
2013-06-20 09:25 1635(1)、TextView 设置个别字体颜色 TextView ... -
Android开发之文件下载,状态时显示下载进度,点击自动安装
2013-05-07 15:38 1367在进行软件升级时,需要进行文件下载,在这里实现自定义的文件下载 ... -
android中的状态保存
2013-04-07 14:21 934package com.zzl.call; import ... -
android动画基础:tween动画
2013-04-06 11:21 1180工程结构图: [img] [/img] 四个动画的xml ... -
面试中遇到的几个问题
2013-06-09 11:56 942SAX与DOM之间的区别 SAX ( ... -
Android获取其他包的Context实例,然后调用它的方法,反射!!!
2013-03-25 10:32 1159Android中有Context的概念,想必大家都知道。Con ... -
Android的内存机制和常见泄漏情形
2013-03-06 16:55 753一、 Android的内存机制 Android的程序由Ja ... -
JUnit测试小小demo
2013-03-06 16:37 1084运行效果图: [img] [/img] 项目结构图 ... -
android开发中的异常小工具
2013-03-04 15:53 862package com.zzl.tools; impor ...
相关推荐
ViewPager 滑动速度设置,并实现点击按钮滑动!
ViewPager的使用方法(实现左右滑动切换页面) 类似于微信TAB
登录图片式随机产生的验证码及viewpager图片滑动(按钮只涉及跳转功能)
使用TabLayout和ViewPager实现可点击切换页面,也可以滑动切换页面的功能。 有不明白的地方、有合理的建议或者意见请留言讨论
ViewPage滑动加载大图和点击关注效果.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
ViewPager+Fragment导航栏支持滑动和点击切换fragment,点击某个按钮触发替换某个tab的fragment。如有tab1,tab2两个导航按钮,分别对应tab1fragment和tab2fragment,点击某个按钮触发,将tab2的tab2fragment替换tab3...
1、顶部导航栏,ViewPager滑动切换页面也可以点击导航栏切换,点击页面上的按钮可跳转activity 2、底部指示器,根据页面的切换进行联动变换 3、左上角菜单栏,PopupWindow悬浮框,可实现微信右上角“+”的功能 博客...
ViewPager通过List内容加载list.size()个自定义View,并且可以通过左右按钮实现滑动页面,点击删除按钮可以删除当前显示的内容。
Fragment+ViewPager实现tab,可实现左右滑动或者按钮跳转
主要为大家详细介绍了Android ViewPager实现左右滑动翻页效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
自定义Tabhost的样式(不是按钮),ViewPager的滑动,Fragment三者的结合
Android viewPager的三种使用方式:常规左右滑动viewPager、上下滑动viewPager结合网格布局recyclerview实现电商分类入口、无需滑动viewPager结合Fragment使用RadioGroup实现单选按钮展示不同View
在一个页面有一个按钮,单击就进入三张图片,这三张图片能左右滑动到最后一张,再滑动就进入带按钮的页面
NULL 博文链接:https://zhelong111.iteye.com/blog/2228527
使用RadioGroup+Viewpager+Fragment实现底部菜单栏和viewpager页面联动. viewpager里是碎片 点击菜单栏viewpager滚动, 滑动viewpager底部菜单栏跟着滚动 有问题欢迎指出!
现在也是利用 ViewPager ,但是却没有利用 ShapeDrawable 来实现带小圆球的图片滑动。如有些播放器一样,在开始安装 app 时,都会出现引导界面,然后才进入主界面,但是在重新启动 app 时却不会再出现该引导界面。 ...
1,利用ViewPager实现app启动画面,同时界面下方有指示器,指示已经滑动到哪张图片 2,在主界面拦截后退按钮操作,让点击后退按钮后直接退出程序,而不回到启动动画