gallery做什么用的?gallery的中文意思是画廊、美术馆。实际上,gallery在android中主要用于展示图片,它可以为我们的图片展示提供比较动态优美的动画效果。

我这个例子里面的图片都是随便弄得,实在太丑了,我就不贴图了,但是效果还是实现了的,我们这里主要将技术……⊙﹏⊙b汗

gallery.xml代码:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <Gallery android:id="@+id/gallery" android:gravity="center" android:layout_width="fill_parent" android:layout_height="wrap_content" ></Gallery> <TextView android:id="@+id/textView_gallery" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="图像介绍" /> </LinearLayout>

activity的代码:

package cn.com.chenzheng_java; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.Gallery; import android.widget.ImageView; import android.widget.SpinnerAdapter; /** * @description 测试android的gallery的使用 * @author chenzheng_java * */ public class GalleryActivity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.gallery); // Gallery 本质上就是一个显示控件,不要把它想得太牛叉了 Gallery gallery = (Gallery)findViewById(R.id.gallery); /*为Gallery设置数据源 * setAdapter(SpinnerAdapter adapter) ;它要我们提供一个SpinnerAdapter类型的参数 * 我们这里为什么提供的是BaseAdapter类型的参数呢,很简单,BaseAdapter继承了SpinnerAdapter * */ gallery.setAdapter(new ImageAdapter(this)); } /** * @description 实现自己的adapter * @author chenzheng_java * */ private class ImageAdapter extends BaseAdapter{ private Context context; // 代表着图片的索引数组 private int[]images = new int[]{ R.drawable.icon, R.drawable.baidu, R.drawable.excel }; public ImageAdapter(Context context){ this.context = context; } @Override public int getCount() { return images.length; } @Override public Object getItem(int position) { return position; } @Override public long getItemId(int position) { return position; } /** * View getView(int position, View convertView, ViewGroup parent) * position 是当前的view在Callery中的位置,从0开始的哦 * convertView 当前的view * parent 当前的view所在的父容器 */ @Override public View getView(int position, View convertView, ViewGroup parent) { if(convertView==null){ convertView = new ImageView(context); } convertView.setBackgroundResource(images[position]); ((ImageView) convertView).setScaleType(ImageView.ScaleType.FIT_CENTER); convertView.setLayoutParams(new Gallery.LayoutParams(120,120)); return convertView; } } }

-----------------------------------------------------------------------------

我们可以看到,其实Gallery的用法非常的简单,我们要做的只是在布局文件中声明他,并且在代码中为他设置上数据源即可。

更多相关文章

  1. 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
  2. [置顶] Android(安卓)长按Listview 每个item底部弹出菜单
  3. Android(安卓)Studio导入第三方jar包或依赖工程的方法
  4. android 闹钟设置
  5. Android(安卓)自动生成的R类
  6. Android(安卓)中使用代码动态网格布局
  7. 【iOS-cocos2d-X 游戏开发之七】整合Cocos2dX的Android项目到Xco
  8. Android大图片背景性能优化篇
  9. android textview滚动条

随机推荐

  1. android支持多行的radiogroup
  2. Android解决父控件拦截子控件手势滑动事
  3. android手机客户端上传文件,java servlet
  4. Android(安卓)模拟新浪微博-随便看看栏目
  5. android 多点触控
  6. Android(安卓)通讯录中用到的关于按名字
  7. linearLayout 和 relativeLayout的属性区
  8. android listview custom style 自定义样
  9. Android执行shell命令
  10. android调用setRequestedOrientation之后