`
isiqi
  • 浏览: 16497990 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

2010.06.05日志:Android Gallery左右循环旋转方法

阅读更多

如图:

2

先在attr.xml里写个Gallery的样式

1:  <?xml version="1.0" encoding="utf-8"?>
2:  <resources>
3:      <declare-styleable name="Gallery">
4:          <attr name="android:galleryItemBackground" />
5:      </declare-styleable>
6:      <!-- 定义Layout外部resources 的xml文件,用来改变Layout的背景图 -->
7:  </resources>
8:  

然后在mainActivity里的OnCreate里:

1:  setContentView(R.layout.main);
2:  
3:          imageAdapter = new myImageAdapter(this);
4:  
5:          gallery = (Gallery) findViewById(R.id.Gallery_preView);
6:          imageView = (ImageView) findViewById(R.id.ImageView_photo);
7:  
8:          gallery.setAdapter(imageAdapter);
9:          gallery.setSelection(200);//设置Gallery的起始位置

下面是imageAdapter的类,它继承BaseAdapter

图片资源:

1:  protected int[] myImageIds = { R.drawable.vista_1, R.drawable.vista_2,
2:              R.drawable.vista_3, R.drawable.vista_4, R.drawable.vista_5,
3:              R.drawable.vista_6, };

构造里:

 1:  public myImageAdapter(Context context) {
 2:          mContext = context;
 3:          /* 使用res/values/attr.xml中的<declare-styleable>定义的Gallery属性 */
 4:          TypedArray typed_array = context
 5:                  .obtainStyledAttributes(R.styleable.Gallery);
 6:          mGalleryItemBackground = typed_array.getResourceId(
 7:                  R.styleable.Gallery_android_galleryItemBackground, 0);
 8:          /* 让对象的styleable 属性能够反复使用 */
 9:          typed_array.recycle();
10:      }
11:  

getCount()方法:

1:  @Override
2:      public int getCount() {
3:          // TODO Auto-generated method stub
4:          // return myImageIds.length;
5:          return Integer.MAX_VALUE;
6:      }

getView()方法:

 1:  @Override
 2:      public View getView(int position, View convertView, ViewGroup parent) {
 3:          ImageView i = new ImageView(mContext);
 4:          
 5:          if (position < 0) {
 6:              position = position + myImageIds.length;
 7:          }
 8:          i.setImageResource(myImageIds[position % myImageIds.length]);
 9:          i.setScaleType(ImageView.ScaleType.FIT_XY);
10:          i.setLayoutParams(new Gallery.LayoutParams(128, 128));
11:          i.setBackgroundResource(mGalleryItemBackground);
12:          return i;
13:      }
分享到:
评论

相关推荐

    org.eclipse.paho.android.service-1.1.1.jar

    android的开发移动端MQTT服务器所需要的依赖包文件。这个是paho的1.1.1版本的,可下载到本地使用。

    fastjson-1.1.70.android.jar

    fastjson-1.1.70.android.jar,安卓专用fastjson解析jar包

    程序员表白程序 源码开放性 第一辑 不断更新(程序之爱系列第一辑)

    【程序员表白程序 源码开放性 第一辑 不断更新(程序之爱系列第一辑)】 这个项目是一个程序员为了表达爱意而创作的独特程序,它不仅展现了编程技术的运用,还融合了情感的传递。程序员们常常以其独特的思维方式和...

    Android N 7.0中报错:android.os.FileUriExposedException的解决方法

    安装Apk时报错:android.os.FileUriExposedException: file:///storage/emulated/0/Download/appName-2.3.0.apk exposed beyond app through Intent.getData(),通过查找相关的资料终于找到了解决的方法,下面分享给...

    Android_SDK.zip

    Android SDK(软件开发工具包)是开发者用来构建、调试和发布Android应用的必备工具集。这个压缩包"Android_SDK.zip"包含了SDK的核心组件,使得开发者能够在各种设备上创建功能丰富的Android应用程序。下面是关于...

    iperf_android.apk.zip

    在本文中,我们将深入探讨iPerf的基本功能、工作原理、使用方法,特别是针对Android系统的iperf3版本。 一、iPerf概述 iPerf最初是由Steve Lewis在2000年开发的,主要服务于Linux系统。随着时间的推移,它已经发展...

    org.eclipse.paho.android.service-1.1.0.jar

    android的开发移动端MQTT服务器所需要的依赖包文件。可下载到本地使用。

    Android Studio Bumblebee (android-studio-2021.1.1.22-windows)

    studio-2021.1.1.22-windows.exe)大黄蜂,适用于Windows x86_64系统,是Android Studio 4.3(Android Studio Arctic Fox 2020.3.1.26新版本命名)版本之后的新版本Android Studio Bumblebee 可以理解为:Android ...

    gradle-7.2-bin.zip

    4. **插件系统**:Gradle 具有丰富的插件生态,可以轻松扩展功能,如Android插件、Java插件等。 5. **缓存机制**:通过缓存已构建的工件,减少不必要的重复工作。 二、Gradle 7.2 的新特性与改进 1. **性能优化**...

    Android高级编程.part2.rar

    第1版 (2010年6月1日) 外文书名: Professional Android Application Development 共四个分卷压缩,请全部下载完成,解压即可: Android高级编程.part1.rar http://download.csdn.net/source/3498403 Android高级...

    Android FastJSON小示例

    在Android开发中,数据交换和序列化是常见的需求,FastJSON是阿里巴巴提供的一款高效、功能丰富的JSON库,它被广泛应用于Android Studio项目中。本文将详细介绍如何在Android Studio中使用FastJSON进行JSON解析和...

    完美解决Jave在linux下转为MP3时为0字节或其他异常

    3、林杰博客说明:http://linjie.org/2015/08/06/amr%E6%A0%BC%E5%BC%8F%E8%BD%ACmp3%E6%A0%BC%E5%BC%8F-%E5%AE%8C%E7%BE%8E%E8%A7%A3%E5%86%B3Linux%E4%B8%8B%E8%BD%AC%E6%8D%A20K%E9%97%AE%E9%A2%98/

    ANDROID应用开发试题.pdf

    2.定义 LinearLayout 水平方向布局时至少设置的三个属性:android:layout_width、android:layout_height 和 android:orientation。 3.为了使 android 适应不同分辨率机型,布局时,可以使用相对布局或使用不同的...

    jmxtools jmxri-1.2.1.jar

    maven编译时报找不到这两个jar文件,发现已经无法从网站下载了,所以自己在网上找到这两个文件下载,分真贵呀,所以现在便宜分享,2个文件只要一分 ...of type legacy using the available factories ...

    AndroidBLE.rar

    在Android平台上,Bluetooth Low Energy(BLE)是一种广泛用于低功耗设备通信的技术,它特别适合于传感器、可穿戴设备和物联网(IoT)应用。"AndroidBLE.rar"这个压缩包文件很可能包含了一个完整的示例项目,帮助...

    Android Studio Electric Eel - 2022.1.1 版本 安装包

    Android Studio Electric Eel | 2022.1.1 对应 Android Gradle 插件3.2-7.4版本 Android Gradle 插件和 Android Studio 【详情对应版本】 Android Studio 版本 所需插件版本 Giraffe 2022.3.1 3.2-8.1 Flamingo ...

    virus.win32.parite.H病毒专杀工具及其查杀方法

    【标题】"virus.win32.parite.H病毒专杀工具及其查杀方法"涉及到的是一个针对特定病毒的防治策略,这里的"virus.win32.parite.H"是一种Windows平台上的恶意软件,属于Parite病毒家族。Parite病毒通常通过电子邮件、...

    Android客户端socket.io官方Demo完整可运行版

    在这个"Android客户端socket.io官方Demo完整可运行版"中,你将找到一个已经调试完毕、可以直接运行的示例项目,这对于初学者或者希望深入理解Socket.IO在Android中如何工作的开发者来说是极有价值的资源。...

    android canvas 3D旋转木马 图片立体展示

    在Android开发中,Canvas是用于在屏幕上绘制2D图形的核心组件。然而,通过巧妙地运用Canvas和一些数学原理,我们也可以实现3D效果,比如3D旋转木马式的图片展示。这种效果通常用于创建引人入胜的用户界面,使应用...

    msinttypes-r26.zip;无法打开包括文件:“stdint.h”

    fatal error C1083: 无法打开包括文件:“stdint.h”: No such file or directory stdint.h是c99标准的头文件,vc不支持,所以肯定会提示“No such file or directory”的。...通过以上方法,成功解决编译错误。

Global site tag (gtag.js) - Google Analytics