• android学习之Gallery(画廊)


    今天看见有同学再问关于画廊那种效果怎么实现,其实自己当时也不知道那叫画廊。嘿嘿。不过还是做了一下。练哈手。

    不过看了哈资料,貌似android不再推荐使用这种了 推荐viewPager来实现  在新版本上尽量使用。

    先上效果图:

    代码如下:

    public class MainActivity extends Activity {
    private  Gallery gallery;
    private ImageView imageView;
    private Integer[] mImageIds ={
            R.drawable.a,
            R.drawable.b,
            R.drawable.c,
            R.drawable.e,
            R.drawable.f
    };
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            imageView=(ImageView) findViewById(R.id.imageView);
            imageView.setImageResource(R.drawable.a);
            gallery=(Gallery) findViewById(R.id.gallery);
            //创建一个adapter对象
            BaseAdapter adapter=new BaseAdapter() {
            
                @Override
                public View getView(int imageItem, View convertView, ViewGroup parent) {
                    //创建一个ImageView
                    ImageView image=new ImageView(MainActivity.this);
                    image.setImageResource(mImageIds[imageItem]); //设置图片
                    //设置imageView的缩放类型
                    image.setScaleType(ImageView.ScaleType.FIT_XY);
                    //设置ImageViewde 的布局参数
                    image.setLayoutParams(new Gallery.LayoutParams(75, 100));
                    return image;
                }    
                @Override
                public long getItemId(int position) {
                    return position;
                }
                
                @Override
                public Object getItem(int position) {
                    // TODO Auto-generated method stub
                    return position;
                }
                
                @Override
                public int getCount() {
                    // TODO Auto-generated method stub
                    return mImageIds.length;
                }
            };
            gallery.setAdapter(adapter);
            gallery.setOnItemClickListener(new OnItemClickListener() {
    
                @Override
                public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                        long arg3) {
                            imageView.setImageResource(mImageIds[arg2]);
                }
                
            });
        }
    }

    Activity代码如下:

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
     >
     <ImageView 
         android:id="@+id/imageView"
         android:layout_width="320dp"
         android:layout_height="320dp"
         android:contentDescription="TODO"/>
    <Gallery 
        android:id="@+id/gallery"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="bottom|center_vertical"
        android:spacing="2dp"
        android:layout_marginTop="25dp"
        android:unselectedAlpha="0.6"
        />
      
    </LinearLayout>
  • 相关阅读:
    Python_Day3
    Python_Day2
    动漫推荐3.0 杂谈
    动漫推荐2.0 杂谈
    动漫推荐1.0 剧情向
    西湖十大特产
    一到春天 杭州西湖就美成了一幅画
    机械键盘十大品牌排行榜
    键盘的日常维护及清理
    无线键盘
  • 原文地址:https://www.cnblogs.com/xiaxiayige/p/3456729.html
Copyright © 2020-2023  润新知