1. 范例说明
•android-support-v4.jar,这是谷歌官方给我们提供的一个兼容低版本Android设备的软件包,里面包囊了只有在Android 3.0以上可以使用的api。而ViewPager就是其中之一,利用它我们可以做很多事情,从最简单的导航,到页面切换菜单等等。
•ViewPager的功能就是可以使视图滑动,就像Lanucher左右滑动那样。
•本Demo向大家演示ViewPager的使用,并在用户未滑动View时,每隔5s钟自动切换到下一个View(循环切换),而当用户有Touch到View时取消5s自动切换功能。并有指示器指示当前处于哪一个View。
2. 运行结果
3. 核心代码
private void initViewPager() {
advPager = (ViewPager) findViewById(R.id.adv_pager);
ViewGroup group = (ViewGroup) findViewById(R.id.viewGroup);
List<View> advPics = new ArrayList<View>();
ImageView img1 = new ImageView(this);
img1.setBackgroundResource(R.drawable.advertising_default_1);
advPics.add(img1);
ImageView img2 = new ImageView(this);
img2.setBackgroundResource(R.drawable.advertising_default_2);
advPics.add(img2);
ImageView img3 = new ImageView(this);
img3.setBackgroundResource(R.drawable.advertising_default_3);
advPics.add(img3);
ImageView img4 = new ImageView(this);
img4.setBackgroundResource(R.drawable.advertising_default);
advPics.add(img4);
imageViews = new ImageView[advPics.size()];
for (int i = 0; i < advPics.size(); i++) {
imageView = new ImageView(this);
imageView.setLayoutParams(new LayoutParams(20, 20));
imageView.setPadding(5, 5, 5, 5);
imageViews[i] = imageView;
if (i == 0) {
imageViews[i]
.setBackgroundResource(R.drawable.banner_dian_focus);
} else {
imageViews[i]
.setBackgroundResource(R.drawable.banner_dian_blur);
}
group.addView(imageViews[i]);
}
advPager.setAdapter(new AdvAdapter(advPics));
advPager.setOnPageChangeListener(new GuidePageChangeListener());
advPager.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_MOVE:
isContinue = false;
break;
case MotionEvent.ACTION_UP:
isContinue = true;
break;
default:
isContinue = true;
break;
}
return false;
}
});
new Thread(new Runnable() {
@Override
public void run() {
while (true) {
if (isContinue) {
viewHandler.sendEmptyMessage(what.get());
whatOption();
}
}
}
}).start();
}
4. 扩展学习与视频讲解
http://www.eyeandroid.com/thread-11355-1-1.html
- 大小: 252.5 KB
分享到:
相关推荐
在Android中,可以使用`ViewPager`组件来实现这种效果。`ViewPager`允许用户通过左右滑动来切换不同的页面,非常适合用来展示一系列图片。同时,配合`PagerAdapter`或`FragmentPagerAdapter`,开发者可以将每个图片...
此外,滑动切换页面的效果可能通过ViewPager实现,它允许用户左右滑动浏览多个页面。 图片加载是移动应用中的常见挑战,因为它涉及到内存管理和用户体验。在这个项目中,开发者可能采用了如Glide或Picasso这样的库...
本资源提供的"超炫android滑动菜单源码"是一个专为Android平台设计的高效、美观的滑动菜单实现,其独特之处在于其视觉效果和交互体验。 首先,我们来深入了解滑动菜单的设计理念。滑动菜单通常隐藏在主界面的左侧或...
ViewPager是Android中用于实现页面滑动的组件,配合PageTransformer可以自定义翻页效果。PageTransformer接口包含一个`transformPage()`方法,通过改变每个页面的缩放、旋转、透明度等属性,可以实现翻页时的3D视觉...
图片浏览器通常需要实现图片滑动效果,这可以通过ViewPager组件实现。ViewPager允许用户左右滑动切换页面,结合Fragment可以实现每个页面都是一个图片。 4. **手势操作**: 应用可能包含缩放、旋转和拖动等手势...
ViewPager是一个常用的Android组件,用于实现页面滑动效果,常用于实现像相册、轮播图、引导页等场景。相比ViewFlow,ViewPager提供了更强大的定制性,支持自定义页面指示器、滑动监听、页面间过渡效果等,且拥有更...
综上所述,开发一个Android超炫的图片浏览器涉及UI设计、图片加载优化、手势识别、性能调优、网络请求和扩展功能等多个方面。通过合理运用Android SDK及第三方库,我们可以构建出一个功能强大、性能优秀的图片浏览...
ViewPager允许用户左右滑动查看不同的图片,同时可以配合PageTransformer实现酷炫的页面过渡动画,增强视觉效果。 在性能优化方面,源码可能会包含对大图的处理策略。例如,使用BitmapFactory.Options进行图片解码...
总的来说,这个"安卓Android源码——超炫的图片浏览器"项目涵盖了Android开发中的多个关键知识点,包括图片加载库的使用、手势识别、ViewPager滑动效果、缓存策略以及异步处理。通过学习和研究这个源码,开发者不仅...
总的来说,这个“安卓Android源码——超炫的图片浏览器.rar”涵盖了Android图片处理的多个核心知识点,包括图片加载库的使用、手势识别与交互设计、图片的内存管理与压缩、滑动效果的实现以及网络请求的处理。...
3. **图片预览与滑动效果**:为了实现流畅的图片浏览体验,开发者可能采用了无缝滑动技术,这涉及到ViewPager或Gallery组件的自定义实现,以及动画效果的添加。 4. **图片查看器UI设计**:UI设计是图片浏览器的重要...
5. **手势操作**:用户可能希望通过手势进行图片的放大、缩小、左右滑动等操作,这需要实现GestureDetector和ScaleGestureDetector等手势检测类,监听并处理用户的触摸事件。 6. **图片处理**:图片浏览器可能需要...
为了实现这一效果,开发者可能会使用RecyclerView或ViewPager组件,配合自定义的滚动监听和动画效果。通过研究源码,我们可以了解如何编写自定义适配器,实现平滑的页面滑动和无缝过渡。 UI设计是这个应用的一大...
一个优秀的图片浏览器应该具备流畅的滑动效果,支持缩放、旋转和手势操作。Android的`ViewPager`组件非常适合用于图片浏览,配合`Fragment`可以轻松实现多图片切换。此外,可以利用`GestureDetector`和`...
这可能涉及到使用`ViewPager`或`RecyclerView`来实现图片的滑动浏览,通过`GestureDetector`和`ScaleGestureDetector`监听用户的滑动和缩放手势。同时,为了达到平滑的效果,我们可以使用` Fresco`或`Glide`这样的...