package com.isoftstone.cry;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.Gallery.LayoutParams;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ImageView.ScaleType;
import android.widget.ViewSwitcher.ViewFactory;
public class GallerySwitcherActivity extends Activity implements OnItemSelectedListener , ViewFactory
{
private ImageSwitcher mswitcher ;
private Integer[] mThumbIds ={
R.drawable.fc,
R.drawable.ic_launcher,
R.drawable.ic_menu_add,
R.drawable.ic_menu_edit,
R.drawable.ic_menu_help,
R.drawable.psu
};
private Integer[] mImageIds ={
R.drawable.fc,
R.drawable.ic_launcher,
R.drawable.ic_menu_add,
R.drawable.ic_menu_edit,
R.drawable.ic_menu_help,
R.drawable.psu
};
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.gallery_imageswitcher);
mswitcher = (ImageSwitcher)findViewById(R.id.imageSwitcher1);
mswitcher.setFactory(this);
mswitcher.setAnimation(AnimationUtils.loadAnimation(this,android.R.anim.fade_out));
mswitcher.setAnimation(AnimationUtils.loadAnimation(this,android.R.anim.fade_in));
Gallery gallery = (Gallery)findViewById(R.id.gallery1);
gallery.setAdapter(new ImageAdapter(this));
gallery.setOnItemSelectedListener(this);
}
//gallery adapter
public class ImageAdapter extends BaseAdapter
{
Context context ;
public ImageAdapter(Context c) {
// TODO Auto-generated constructor stub
context = c ;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mThumbIds.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ImageView iv = new ImageView(context);
iv.setImageResource(mThumbIds[position]);
iv.setAdjustViewBounds(true);
iv.setLayoutParams(new Gallery.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
iv.setBackgroundResource(R.drawable.fc);
return iv;
}
}
@Override
public void onItemSelected(AdapterView<?> adapter, View v, int position,
long id) {
// TODO Auto-generated method stub
mswitcher.setImageResource(mImageIds[position]);
}
@Override
public View makeView() {
// TODO Auto-generated method stub
ImageView i = new ImageView(this);
i.setBackgroundColor(0xff000000);
i.setScaleType(ImageView.ScaleType.FIT_CENTER);
i.setLayoutParams(new ImageSwitcher.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));
return i;
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
}
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<Gallery
android:id="@+id/gallery1"
android:layout_width="fill_parent"
android:layout_height="60dp"
android:gravity="center_vertical"
android:spacing="16dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true" />
<ImageSwitcher
android:id="@+id/imageSwitcher1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true">
</ImageSwitcher>
</RelativeLayout>
分享到:
相关推荐
在Android开发中,`Gallery`控件和`ImageSwitcher`是两个非常有用的组件,尤其在创建图片轮播或相册应用时。本篇文章将详细解释如何将它们结合起来使用,以实现一个简单的图片浏览功能。 `Gallery`是Android提供的...
在Android开发中,`Gallery`和`ImageSwitcher`是两个非常实用的UI组件,用于创建滑动浏览图片的应用场景。本教程将介绍如何将这两个控件结合起来,以实现一个简单但功能完整的图片浏览器。 首先,`Gallery`控件是一...
本文将深入解析如何在Android入门项目中结合使用这两个控件,为Android初学者提供有价值的参考。 首先,`Gallery`是一个水平滚动的视图容器,它可以展示一系列的子视图,并允许用户通过左右滑动来切换不同的子视图...
《Android从入门到精通》 第1章 初识Android 1.1 什么是Android 1.1.1 移动信息设备分类 1.1.2 Open Handset Alliance和 Android 1.2 Android简介 1.2.1 Andriod的历史 1.2.2 Andriod的未来 1.2.3 Andriod平台的技术...
总之,“android端入门视图实例集锦”这个资料将带你走进Android视图世界的大门,通过学习和实践ListView、Spinner、ImageSwitcher等实例,你可以掌握基本的UI设计技能,并为进一步探索Android开发奠定坚实基础。...
41、AIDL Service android中的跨进程调用 客户端,服务端见AidlService 42、BroadcastReceiver 接收广播消息 43、非UI线程中不能操作UI线程中的View测试 44、ImageSwitcher animation gesture实现可以滑动的跑马灯...
《Android开发入门与实战》内容上涵盖了用Android开发的大部分场景,从Android基础介绍、环境搭建、SDK介绍、Market使用,到应用剖析、组件介绍、实例演示等方面。从技术实现上,讲解了5个Android平台下的完整综合...
Google Android开发入门与实战的代码 1章 掀起你的盖头来——初识Android. 1 1.1 认识Android 1 1.2 Android的背景 2 1.2.1 Android的历史 2 1.2.2 Android的发展 2 1.3 我的Android我做主 2 ...
.mht"可能是某个网站的教程存档,包含当时的最新Android入门知识。这类资源通常会讲解Android开发环境的搭建、基本组件的使用、UI设计等。 4. **Android 控件之ImageSwitcher**:ImageSwitcher是Android中的一个...
一、Android入门介绍 视频教程 1.1 android系统介绍 1.2 android系统框架的介绍 1.3 如何搭建android开发环境 1.4 android生命周期的介绍 1.5 android使用全局变量传递数据 1.6 android使用剪切板传递数据 1.7 意图...
10. **myhelloworld**:这是一个典型的Android入门程序,通常用于展示简单的“Hello, World!”输出。开发者可能在此提供了Android开发的基本步骤,包括创建项目、编写布局文件和主活动代码。 通过研究这些源码,...