两年没写过了,这两年我都干了些啥。。。。。
项目需求,要做一个头像滑动切换( demo源码在 http://git.oschina.net/agilest/gallary-demo),android刚接触,不是很熟悉,网上看了有很多类似仿iOS CoverFlow的组件(http://www.oschina.net/p/android-coverflow)。看了一下效果跟我要的差不多一致,就是当前图片正面显示,左右两侧的Y轴旋转。但是这个demo在滑动后Y轴旋转角度貌似有点麻烦(又是计算中心点,又是各种加减乘除),同时好像还有bug(滑动过快会导致正负出现计算错误)。研究了一番,发现其实很简单,左侧的图片旋转80度,右侧的图片旋转-80度,只要找到每一张的前一张(往左侧滑动时左侧那张)和下一张(往左侧滑动时右侧那张),然后让他们分别延Y轴旋转80盒-80就可以了,如何找到这两张呢?其实很简单:
public View getView(int position, View convertView, ViewGroup parent) { ImageView i = mImages[position % mImages.length]; i.setTag(position); return i; }
给每个ImageView设置一个tag,
然后在滑动时判断tag的值就可以了:
protected boolean getChildStaticTransformation(View child, Transformation t) { t.clear(); t.setTransformationType(Transformation.TYPE_MATRIX); int childIndex = Integer.parseInt(child.getTag().toString()); int currentIndex = Integer.parseInt(this.getSelectedView().getTag().toString()); if(childIndex==currentIndex){ transformImageBitmap((ImageView) child,t,0); }else if(childIndex<currentIndex){ transformImageBitmap((ImageView) child,t,mMaxRotationAngle); }else{ transformImageBitmap((ImageView) child,t,-mMaxRotationAngle); } return true; }
相关推荐
在Android开发中,`Gallery`组件是一个非常有用的控件,它允许用户以横向滚动的方式浏览一系列的图片或项目。在本篇文章中,我们将深入探讨`Gallery`组件的使用方法、特性以及如何创建一个简单的`Gallery` Demo。 ...
在Android开发中,Gallery组件是早先版本(API 16及以下)中提供的一种用于展示可滚动项目列表的视图。它允许用户通过水平滑动来浏览一系列的图片或者其他内容,常被用来实现类似相册或者菜单的效果。在本示例...
综上所述,"Android Gallery 左对齐,点击禁止滑动 demo"是一个关于如何自定义`Gallery`行为的实例,通过这个示例,开发者可以学习到如何控制`Gallery`的对齐方式和手势响应,同时也能了解到为何在新项目中应优先...
在Android开发中,Demo案例是学习和理解各项功能的关键,它们提供了实际的代码示例,帮助开发者快速上手。以下是一些基于“android 常见Demo案例”中提到的关键点进行的详细解释: 1. **抽屉(DrawerLayout)**: ...
通过这个“一个很实用的Gallery demo”,开发者不仅可以学习如何使用`Gallery`组件,还能了解到Android UI设计、适配器模式、事件监听以及性能优化等多个重要知识点,对于提升Android应用开发能力非常有帮助。
简明、完整、全面的安卓开发demo集合,包含如下示例 1、LinearLayout Button、RadioGroup、 CheckBox 2、TableLayout 3、FrameLayout 霓虹灯效果 4、RelativeLayout 梅花效果 5、自定义view跟着触点走的小球 6、 ...
在Android开发中,`Gallery`组件是用于展示一系列图片或者选项的一个控件,它允许用户通过左右滑动来浏览。然而,`Gallery`在新版本的Android SDK中已经被弃用,取而代之的是`HorizontalScrollView`或者`ViewPager`...
"Gallery_Demo_android"是一个Android应用的示例项目,主要展示了如何在Android平台上实现一个图片画廊的功能。这个Demo可能包含了一个或多个用于显示和浏览GIF和静态图像的组件,比如GifViewTest,这可能是一个专门...
在Android开发中,`Gallery`组件是一个非常实用的控件,它允许用户通过左右滑动来展示一系列的图片或视图。然而,原生的`Gallery`存在一些问题,比如默认情况下会有一定的空白间隙,以及在快速滑动时可能会导致定位...
"Android Gallery相册浏览Demo"就是一个很好的实例,它演示了如何实现这一功能。这个项目通常会包含以下关键知识点: 1. **Android SDK**: 任何Android应用的基础,包括必要的API库和工具,用于构建、调试和运行...
在Android开发中,"gallery画廊展示demo"是一种常见的应用场景,通常用于图片浏览或选择,让用户可以方便地在多张图片之间切换。Gallery组件在早期的Android版本中被广泛使用,它提供了一个横向滚动的视图,用户可以...
### Android开发经典Demo知识点概述 随着移动互联网技术的飞速发展,Android开发成为了软件开发领域的重要组成部分之一。本文将基于给定的文件信息,详细解析其中提到的经典Android开发Demo所涉及的关键技术和知识...
在Android开发中,"Gallery Demo"是一个典型的项目,它展示了如何创建一个图片画廊功能,让用户可以左右滑动浏览图片,并且在底部显示页码,提供了良好的用户体验。这个项目主要涉及了以下几个重要的Android知识点:...
这个"Android拍照选择图片Demo"就是一个实例,展示了如何在Android应用中集成这两个功能。以下将详细介绍这两个功能的实现步骤及相关的技术点。 1. **启动相机拍照** 在Android中,启动相机通常通过`Intent`来...
"android相册demo"就是一个专门展示如何将Gallery组件与Camera功能结合的实例项目,提供了完整的工程源码供开发者学习和参考。在这个项目中,我们可以学到以下几个关键知识点: 1. **Gallery组件**:Gallery是...
7. **10.2 Gallery.htm**:`Gallery`组件是旧版Android API中的一个图片滚动容器,可以展示一系列图片并允许用户左右滑动选择。现在可能已经被`ViewPager`替代,但仍然可以学习如何实现类似的功能。 8. **11.6 3...
在Android开发中,"Gallery Imageswitcher切换图片demo"是一个典型的图像展示与切换的应用实例,主要涉及了Gallery组件和ImageSwitcher两个核心元素。Gallery是一个可以横向滑动浏览的控件,而ImageSwitcher则是一个...
在Android开发中,"环形gallery"是一种独特的用户界面组件,它为用户提供了展示内容的创新方式,通常用于实现如应用选择器、时间选择器等场景。本篇将深入探讨环形gallery的实现原理和源码分析。 首先,我们要了解...
标题 "Android_Demo" 暗示我们正在讨论一个与Android相关的示例项目,可能是用于展示特定功能或技术的代码库。在这个项目中,"GalleryTest"作为一个子文件夹或类名,可能包含了关于图像画廊操作的示例代码。 在...
【Android Gallery 3D】是一款基于Android平台的3D相册应用,它为用户提供了一种独特的方式来展示和浏览他们的照片集。这个应用以其创新的3D界面和流畅的用户体验而受到许多开发者的关注。Gallery 3D展示了Android...