前言
本章内容是android.widget.ImageSwitcher,翻译来自"wallace2010",欢迎大家访问他的博客:,再次感谢"wallace2010" !欢迎你一起参与Android API 的中文翻译,联系我over140@gmail.com。
声明
欢迎转载,但请保留文章原始出处:)
移动MM博客:http://dev.10086.cn/blog/?55151
Android中文翻译组:
正文
一、结构
public class ImageSwitcher extends ViewSwitcher
java.lang.Object
android.view.ViewGroup android.widget.FrameLayout android.widget.ViewAnimator android.widget.ViewSwitcher android.widget.ImageSwitcher二、概述
效果图
让我们先来看看XML文件
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>
< /div>
看到了吧, 主界面采用了相对布局, 用了ImageSwitcher 和 Gallery 两种UI组件.
再来看看JAVA代码吧
三、公共方法
public void setImageDrawable (Drawable drawable)
绘制图片
public void setImageResource (int resid)
设置图片资源库
public void setImageURI (Uri uri)
设置图片地址
四、补充
4.1 文章链接
4.2 示例代码(本文代码转载自)
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) { } }
这样一来, 就完成了!