Android UI设计——Gallery控件,androidgallery
投稿于 被查看 490 次 评论:97
Android UI设计——Gallery控件,androidgallery
Gallery
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);
}
}
}
版权声明:本文为博主原创文章,欢迎转载,转载请在文章显眼处说明文章出处并给出连接。
用户评论