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; } }}