Android UI设计——Gallery控件

来源:互联网 发布:centos 7 gcc 安装包 编辑:程序博客网 时间:2024/05/20 21:48

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

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

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

Gallery的监听通过onItemSelectListener 来实现,通过这个监听可以获取到在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);        }    }}

这里写图片描述

0 1
原创粉丝点击