欢迎访问移动开发之家(rcyd.net),关注移动开发教程。移动开发之家  移动开发问答|  每日更新
页面位置 : > > 内容正文

Android UI设计——Gallery控件,androidgallery

来源: 开发者 投稿于  被查看 490 次 评论:97

Android UI设计——Gallery控件,androidgallery


  Gallery实现的功能是将显示的内容左右滑动。举例来说,有时我们下载一个APP应用的时候,会在应用市场中查看他的特性和界面,我们查看的内容通过左右滑动的方式来展示,这其实就是以Gallery控件来实现的。

  Gallery的实现也需要使用Adapter。首先我们来看一下Gallery的几个常用属性:
  

  • spacing属性:左右两个Item离开多少距离;
  • unselectAlpha属性:设置透明度;当在中间的Item获取到焦点时,将不会显示显示透明度的属性。

      Galleryo的监听通过nItemSelectListener 来实现,通过这个监听可以获取到在Gallery显示过程中居中的View。

Activity内容:(Adapter的使用不再详细描述)

public class MainActivity extends Activity {
    private Gallery mGalleryView;
    private List<Fruit> mFruits;
    private LayoutInflater mInflater;
    private MyGalleryAdapter mMyGalleryAdapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        mGalleryView = (Gallery) findViewById(R.id.galleray_fruit);
        mInflater = getLayoutInflater();
        //数据初始化。
        initData();
        mMyGalleryAdapter = new MyGalleryAdapter(mFruits,mInflater);
        mGalleryView.setAdapter(mMyGalleryAdapter);
        //监听事件
        mGalleryView.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> adapterView, View view, int position, long l) {
            //将获取到焦点的水果,也就是居中的水果显示出来。
                Log.d("data", ""+mFruits.get(position).getmFruitName());
            }
            @Override
            public void onNothingSelected(AdapterView<?> adapterView) {
            }
        });
    }

    private void initData() {
        mFruits =new ArrayList<Fruit>();
        for (int i=0; i<10;i++){
            Fruit apple = new Fruit(R.mipmap.apple,"苹果");
            mFruits.add(apple);
            Fruit banana = new Fruit(R.mipmap.banana,"香蕉");
            mFruits.add(banana);
            Fruit grape = new Fruit(R.mipmap.grape,"葡萄");
            mFruits.add(grape);
            Fruit watermelon = new Fruit(R.mipmap.watermelon,"西瓜");
            mFruits.add(watermelon);
            Fruit pineapple = new Fruit(R.mipmap.pineapple,"菠萝");
            mFruits.add(pineapple);
        }
    }
}

这里写图片描述

版权声明:本文为博主原创文章,欢迎转载,转载请在文章显眼处说明文章出处并给出连接。

相关频道:

用户评论