?
Dokumen ini menggunakan Manual laman web PHP Cina Lepaskan
ImageSwitcher ?
翻譯人:wallace2010
譯者博客:http://blog.csdn.net/springiscoming2008
版本:Android 2.2 r1
?
public class ImageSwitcher extends ViewSwitcher
?
java.lang.Object
android.view.View
? ???? ???????? android.view.ViewGroup
? ???? ?????? ???????? android.widget.FrameLayout
? ???? ?????? ?????? ???????? android.widget.ViewAnimator
? ???? ?????? ?????? ?????? ???????? android.widget.ViewSwitcher
? ???? ?????? ?????? ?????? ?????? ???????? android.widget.ImageSwitcher
?
類概述
????????
(譯者注:ImageSwitcher是Android中控制圖片展示效果的一個控件,如:幻燈片效果...,頗有感覺啊,做相冊一絕。)
?
公共方法
???????? public void setImageDrawable (Drawable drawable)
???????? 繪制圖片
?
public void setImageResource (int resid)
設(shè)置圖片資源庫
?
public void setImageURI (Uri uri)
設(shè)置圖片地址
????????
補充
???????? 文章鏈接
?????????????????? Android ImageSwitcher
?????????????????? Image Switcher View | Android Developer Tutorial
???????? 示例代碼(本文代碼轉(zhuǎn)載自這里)
?????????????????? java文件
public class mainactivity extends Activity implements
? OnItemSelectedListener, ViewFactory {
?private ImageSwitcher is;
?private Gallery gallery;
?
?private Integer[] mThumbIds = { R.drawable.b, R.drawable.c,
?? R.drawable.d, R.drawable.f, R.drawable.g,
?? };
?
?private Integer[] mImageIds = { R.drawable.b, R.drawable.c,
?? R.drawable.d, R.drawable.f, R.drawable.g, };
?
@Override
?protected void onCreate(Bundle savedInstanceState) {
? super.onCreate(savedInstanceState);
? requestWindowFeature(Window.FEATURE_NO_TITLE);
? setContentView(R.layout.main);
?
? is = (ImageSwitcher) findViewById(R.id.switcher);
? is.setFactory(this);
?
? is.setInAnimation(AnimationUtils.loadAnimation(this,
??? android.R.anim.fade_in));
? is.setOutAnimation(AnimationUtils.loadAnimation(this,
??? android.R.anim.fade_out));
?
? gallery = (Gallery) findViewById(R.id.gallery);
?
? gallery.setAdapter(new ImageAdapter(this));
? gallery.setOnItemSelectedListener(this);
?}
?
?@Override
?public View makeView() {
? ImageView i = new ImageView(this);
? i.setBackgroundColor(0xFF000000);
? i.setScaleType(ImageView.ScaleType.FIT_CENTER);
? i.setLayoutParams(new ImageSwitcher.LayoutParams(
??? LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
? return i;
?}
?
?public class ImageAdapter extends BaseAdapter {
? public ImageAdapter(Context c) {
?? mContext = c;
? }
?
? public int getCount() {
?? return mThumbIds.length;
? }
?
? public Object getItem(int position) {
?? return position;
? }
?
? public long getItemId(int position) {
?? return position;
? }
?
? public View getView(int position, View convertView, ViewGroup parent) {
?? ImageView i = new ImageView(mContext);
?
?? i.setImageResource(mThumbIds[position]);
?? i.setAdjustViewBounds(true);
?? i.setLayoutParams(new Gallery.LayoutParams(
???? LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
?? i.setBackgroundResource(R.drawable.e);
?? return i;
? }
?
? private Context mContext;
?
?}
?
?@Override
?public void onItemSelected(AdapterView<?> parent, View view, int position,
?? long id) {
? is.setImageResource(mImageIds[position]);
?
?}
?
?@Override
?public void onNothingSelected(AdapterView<?> parent) {
?}
}
?????????????????? xml文件
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
??? android:layout_width="match_parent"
??? android:layout_height="match_parent">
???
??? <ImageSwitcher android:id="@+id/switcher"
??????? android:layout_width="match_parent"
??????? android:layout_height="match_parent"
??????? android:layout_alignParentTop="true"
??????? android:layout_alignParentLeft="true"
??? />
???
??? <Gallery android:id="@+id/gallery"
??????? android:background="#55000000"
??????? android:layout_width="match_parent"
??????? android:layout_height="60dp"
??????? android:layout_alignParentBottom="true"
??????? android:layout_alignParentLeft="true"
???????
??????? android:gravity="center_vertical"
??????? android:spacing="16dp"
??? />
</RelativeLayout>