您的位置:首页 > 其它

初识 Gallery

2015-10-23 10:08 239 查看
gallery 相当于一个容器,可以装那些图片等。然后几十张图片直接可以左右拖动,也可以点击显示。

写一个最简单的例子:

1,这个是主要的activity

public class GalleryActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_text_five);
Gallery g=(Gallery) findViewById(R.id.gallery);
g.setAdapter(new ImageAdapter(this));
g.setBackgroundResource(R.drawable.background);
g.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(GalleryActivity.this,"你选择了"+position+"图片", Toast.LENGTH_LONG).show();

}
});
}

}

这个是Adapter对应的类:

public class ImageAdapter extends BaseAdapter {
private int[] drawables = { R.drawable.aa, R.drawable.bb, R.drawable.cc, R.drawable.dd, R.drawable.ee,
R.drawable.ff, R.drawable.gg };
private Context mcontext;

public ImageAdapter(Context context) {
mcontext = context;
}

@Override
public int getCount() {
// TODO Auto-generated method stub
return drawables.length;
}

@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}

@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
ImageView iv=new ImageView(mcontext);
iv.setImageResource(drawables[position]);
iv.setLayoutParams(new Gallery.LayoutParams(500, 500));
iv.setScaleType(ImageView.ScaleType.FIT_CENTER);
return iv;
}

3,xml对应 代码:

<Gallery xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:id="@+id/gallery" >

    

</Gallery>

效果:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  gallery