返回介绍

ImageSwitcher

发布于 2025-03-09 17:00:29 字数 5557 浏览 0 评论 0 收藏 0

ImageSwitcher

翻译人:wallace2010

版本: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)

设置图片资源库

public void setImageURI (Uri uri)

设置图片地址

补充

文章链接

Android ImageSwitcher

Image Switcher View | Android Developer Tutorial

示例代码(本文代码转载自 这里

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>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文