关于简单的gridview学习笔记
xml
1 1 <GridView 2 2 android:id="@+id/gridview" 3 3 android:layout_width="fill_parent" 4 4 android:layout_height="wrap_content" 5 5 android:layout_below="@+id/askl" 6 6 android:layout_marginTop="5dp" 7 7 android:gravity="center" 8 8 android:horizontalSpacing="10dp" <!--水平间隔 --> 9 9 android:numColumns="auto_fit" <!--列数--> 10 10 android:columnWidth="70dp" <!--列宽--> 11 11 android:stretchMode="columnWidth" <!--如何填满空余的位置,模拟器采用WVGA800*480,每排4列,有4*100+5*3=415,还余65px的空间,如果是columnWidth,则这剩余的65将分摊给4列,每列增加16/17px。如果采用SpacingWidth,则分摊给3个间隔空隙 --> 12 12 android:verticalSpacing="10dp" > 13 13 </GridView>
activity中的代码
public class heroActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.hero); GridView gridview = (GridView) findViewById(R.id.gridview); ArrayList<HashMap<String, Object>> lstimage = new ArrayList<HashMap<String, Object>>(); for (int i = 0; i < arr.nums(); i++) { HashMap<String, Object> map = new HashMap<String, Object>(); map.put("image", arr.getimage(i)); map.put("text", arr.getname(i)); lstimage.add(map); } //将英雄头像和名称添加到动态数组 lstimage 中 SimpleAdapter saImageItems = new SimpleAdapter(this, lstimage, R.layout.gv, new String[] { "image", "text" }, new int[] { R.id.image, R.id.text }); gridview.setAdapter(saImageItems); //设置gridview的适配器 gridview.setOnItemClickListener(new ItemClickListener()); Button bask = (Button) findViewById(R.id.bask); bask.getBackground().setAlpha(100); bask.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { Toast.makeText(heroActivity.this, "付费后开通查询功能 >.<", Toast.LENGTH_LONG) .show(); } }); } class ItemClickListener implements OnItemClickListener { public void onItemClick(AdapterView<?> parent, View view, int position, long rowid) { HashMap<String, Object> item = (HashMap<String, Object>) parent .getItemAtPosition(position); // 获取数据源的属性值 String itemText = (String) item.get("text"); Object object = item.get("image"); //获取所点击的英雄头像(image)和名称(text) Toast.makeText(heroActivity.this, itemText, Toast.LENGTH_LONG) .show(); Intent intent = new Intent(heroActivity.this, herodata.class); intent.putExtra("position", position); startActivity(intent); } } }
_____MildTheorem