热门IT资讯网

android的GridView和Gallery

发表于:2024-11-26 作者:热门IT资讯网编辑
编辑最后更新 2024年11月26日,GridView:activity_main.xml MainActivitypackage com.example.gridview;import android.app.Activity;i

GridView:

activity_main.xml

    

MainActivity

package com.example.gridview;import android.app.Activity;import android.content.Context;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.GridView;import android.widget.ImageView;public class MainActivity extends Activity {        private GridView gridView;                @Override        protected void onCreate(Bundle savedInstanceState) {                super.onCreate(savedInstanceState);                setContentView(R.layout.activity_main);                gridView=(GridView) findViewById(R.id.gridView1_1);                MyImageAdapter myImageAdapter=new MyImageAdapter(this);                                gridView.setAdapter(myImageAdapter);        }        @Override        public boolean onCreateOptionsMenu(Menu menu) {                // Inflate the menu; this adds items to the action bar if it is present.                getMenuInflater().inflate(R.menu.main, menu);                return true;        }        @Override        public boolean onOptionsItemSelected(MenuItem item) {                // Handle action bar item clicks here. The action bar will                // automatically handle clicks on the Home/Up button, so long                // as you specify a parent activity in AndroidManifest.xml.                int id = item.getItemId();                if (id == R.id.action_settings) {                        return true;                }                return super.onOptionsItemSelected(item);        }                static class MyImageAdapter extends BaseAdapter{                private Context ct;                //要显示的图片资源                private int [] p_w_picpaths={                                R.drawable.th_seismometer_1,                                R.drawable.th_skippylite,                                R.drawable.th_sms_hey_blue,                                R.drawable.th_ssh,                                R.drawable.th_things1,                                R.drawable.th_thisday,                                R.drawable.th_seismometer_1,                                R.drawable.th_skippylite,                                R.drawable.th_sms_hey_blue,                                R.drawable.th_ssh,                                R.drawable.th_things1,                                R.drawable.th_thisday};                MyImageAdapter(Context ct){                        this.ct=ct;                }                @Override                public int getCount() {                        // TODO Auto-generated method stub                        return p_w_picpaths.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) {                        // TODO Auto-generated method stub                        ImageView p_w_picpathView;                        if(convertView==null){                                p_w_picpathView=new ImageView(ct);                                //设置图片的宽和高                                p_w_picpathView.setLayoutParams(new GridView.LayoutParams(85, 85));                                //设置拉伸或截取方式                                p_w_picpathView.setScaleType(ImageView.ScaleType.CENTER_CROP);                                p_w_picpathView.setPadding(8, 8, 8, 8);                                                        }else{                                p_w_picpathView=(ImageView)convertView;                        }                        p_w_picpathView.setImageResource(p_w_picpaths[position]);                        return p_w_picpathView;                }                        }}


Gallery:

activity_main.xml

                   

MainActivity

package com.example.gallery;import android.app.Activity;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.Gallery;import android.widget.ImageView;public class MainActivity extends Activity {        private Gallery gallery;        @Override        protected void onCreate(Bundle savedInstanceState) {                super.onCreate(savedInstanceState);                setContentView(R.layout.activity_main);                gallery=(Gallery) findViewById(R.id.gallery1_1);                MyGalleryAdapter myGalleryAdapter=new MyGalleryAdapter();                gallery.setAdapter(myGalleryAdapter);                        }        @Override        public boolean onCreateOptionsMenu(Menu menu) {                // Inflate the menu; this adds items to the action bar if it is present.                getMenuInflater().inflate(R.menu.main, menu);                return true;        }        @Override        public boolean onOptionsItemSelected(MenuItem item) {                // Handle action bar item clicks here. The action bar will                // automatically handle clicks on the Home/Up button, so long                // as you specify a parent activity in AndroidManifest.xml.                int id = item.getItemId();                if (id == R.id.action_settings) {                        return true;                }                return super.onOptionsItemSelected(item);        }                        class MyGalleryAdapter extends BaseAdapter{                private int [] p_w_picpaths={                                R.drawable.th_seismometer_1,                                R.drawable.th_skippylite,                                R.drawable.th_sms_hey_blue,                                R.drawable.th_ssh,                                R.drawable.th_things1,                                R.drawable.th_thisday,                                R.drawable.th_seismometer_1,                                R.drawable.th_skippylite,                                R.drawable.th_sms_hey_blue,                                R.drawable.th_ssh,                                R.drawable.th_things1,                                R.drawable.th_thisday};                @Override                public int getCount() {                        // TODO Auto-generated method stub                        return p_w_picpaths.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) {                        // TODO Auto-generated method stub                        ImageView p_w_picpathView;                        if(convertView==null){                                p_w_picpathView=new ImageView(MainActivity.this);                                                        }else{                                p_w_picpathView=(ImageView)convertView;                        }                        p_w_picpathView.setImageResource(p_w_picpaths[position]);                        return p_w_picpathView;                }                        }}


0