1、布局

<?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"
android:orientation="vertical" >

<ImageSwitcher
android:id="@+id/imageswitcher"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" >
</ImageSwitcher>

<Gallery
android:id="@+id/gallery"
android:layout_width="fill_parent"
android:layout_height="60dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:background="#55000000"
android:gravity="center_vertical"
android:spacing="16dp" />

</RelativeLayout>

2、Activity

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.view.ViewGroup.LayoutParams;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.Gallery;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ViewSwitcher.ViewFactory;

public class ImageActivity extends Activity implements ViewFactory {

private ImageSwitcher imageSwitcher;

private Gallery gallery;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.imagelayout);

imageSwitcher = (ImageSwitcher) findViewById(R.id.imageswitcher);
imageSwitcher.setFactory(this);
imageSwitcher.setInAnimation(AnimationUtils.loadAnimation(this,
android.R.anim.fade_in));
imageSwitcher.setOutAnimation(AnimationUtils.loadAnimation(this,
android.R.anim.fade_out));

gallery = (Gallery) findViewById(R.id.gallery);
ImageAdapter imageAdapter = new ImageAdapter(this);
gallery.setAdapter(imageAdapter);
gallery.setOnItemSelectedListener(new OnItemSelectedListener() {

@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int index, long arg3) {
imageSwitcher.setImageResource(ConstData.imageId[index]);
}

@Override
public void onNothingSelected(AdapterView<?> arg0) {

}
});
}

@Override
public View makeView() {
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;

}

}


3、Adapter

import android.view.View;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.widget.BaseAdapter;
import android.widget.Gallery;
import android.widget.ImageView;

public class ImageAdapter extends BaseAdapter {

private ImageActivity imageActivity;

public ImageAdapter(ImageActivity imageActivity) {
this.imageActivity = imageActivity;
}

@Override
public int getCount() {
// TODO Auto-generated method stub
return ConstData.imageId.length;
}

@Override
public Object getItem(int i) {
// TODO Auto-generated method stub
return i;
}

@Override
public long getItemId(int i) {
// TODO Auto-generated method stub
return i;
}

@Override
public View getView(int i, View view, ViewGroup viewgroup) {
ImageView imageView = null;
imageView = new ImageView(imageActivity);
imageView.setLayoutParams(new Gallery.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
imageView.setAdjustViewBounds(true);
imageView.setImageResource(ConstData.imageId[i]);
return imageView;
}

}


更多相关文章

  1. Android Layout布局文件里的android:layout_height等属性为什么
  2. android RelativeLayout属性和布局实例
  3. Android界面编程——Android布局组件(二)
  4. 关于界面布局的一些小知识
  5. Android 第七课——UI布局
  6. Android UI布局之RelativeLayout
  7. android布局文件属性说明(转)
  8. 关于FragmentLayout布局的位置问题

随机推荐

  1. Android(安卓)BroadcastReceiver介绍
  2. android 布局大全
  3. 让Android后台运行,不用service
  4. 【ALearning】第二章 Androidproject知识
  5. 获取Android当前网络类型(2g、3g、4g、wif
  6. SparseArray和SparseArrayCompat的使用
  7. android 分辨率大总结
  8. Android学习之 Intent
  9. android布局动画实现方法
  10. Android快速开发工具集合——YUtils