Android 九宫格布局文件Word文档格式.docx
《Android 九宫格布局文件Word文档格式.docx》由会员分享,可在线阅读,更多相关《Android 九宫格布局文件Word文档格式.docx(9页珍藏版)》请在冰豆网上搜索。
GridView
@+id/MainActivityGrid"
wrap_content"
numColumns="
3"
columnWidth="
50dp"
layout_below="
layout_marginTop="
5dp"
/>
@+id/MainActivityrlThree"
60dp"
layout_alignParentBottom="
true"
TextView
@+id/tvLineBottom"
text="
@string/line_default"
Button
@+id/btmore_MainActivity"
layout_alignParentRight="
More"
其次就是每一格九宫格的布局方式:
--九宫格每一格的布局-->
LinearLayout
ImageView
@+id/MainActivityImage"
layout_gravity="
center_horizontal"
@+id/MainActivityText"
textSize="
18sp"
lines="
1"
8dp"
/LinearLayout>
最后就是adapter的编写:
public
class
ImageAdapter
extends
BaseAdapter
{
private
Context
context;
ImageAdapter(Context
context)
this.context=context;
}
Integer[]
images
=
//九宫格图片的设置
R.drawable.icon_1,
R.drawable.icon_2,
R.drawable.icon_3,
R.drawable.icon_4,
R.drawable.icon_5,
R.drawable.icon_6,
R.drawable.icon_7,
R.drawable.icon_8,
R.drawable.icon_9,
};
String[]
texts
//九宫格图片下方文字的设置
"
记录支出"
记录收入"
账本管理"
类别管理"
查看图表"
收支对照"
记录心得"
新闻公告"
系统设置"
//get
the
number
@Override
int
getCount()
return
images.length;
Object
getItem(int
position)
position;
current
selector'
s
id
long
getItemId(int
//create
view
method
View
getView(int
position,
view,
ViewGroup
viewgroup)
ImgTextWrapper
wrapper;
if(view==null)
wrapper
new
ImgTextWrapper();
LayoutInflater
inflater
LayoutInflater.from(context);
inflater.inflate(R.layout.item,
null);
view.setTag(wrapper);
view.setPadding(15,
15,
15);
//每格的间距
}
else
(ImgTextWrapper)view.getTag();
wrapper.imageView
(ImageView)view.findViewById(R.id.MainActivityImage);
wrapper.imageView.setBackgroundResource(images[position]);
wrapper.textView
(TextView)view.findViewById(R.id.MainActivityText);
wrapper.textView.setText(texts[position]);
view;
imageView;
textView;
-main
publicclassMainActivityextendsActivity{
GridViewgridView;
ImageAdapteradapter;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
gridView=(GridView)findViewById(R.id.MainActivityGrid);
adapter=newImageAdapter(this);
gridView.setAdapter(adapter);
}
xmlversion="
encoding="
GridViewxmlns:
android:
@+id/gridview"
90dp"
gravity="
center"
horizontalSpacing="
10dp"
auto_fit"
stretchMode="
columnWidth"
verticalSpacing="
/>
RelativeLayout
xmlns:
paddingBottom="
4dip"
<
LinearLayout
@+id/shoukuan"
70dp"
layout_weight="
TextView
match_parent"
20dp"
ImageView
@+id/img_shoukuan"
30dp"
src="
@drawable/o2o_16"
@+id/txt_shoukuan"
O2O收款"
textColor="
#000000"
13dp"
publicclassMainActivityextendsActionBarActivity{
//定义图标数组
privateint[]imageRes={
R.drawable.o2o_16,
R.drawable.dingdan_16,
R.drawable.zhuanzhang_16,
R.drawable.telchongzhi_28,
R.drawable.card_30,
R.drawable.shuidian_31,
R.drawable.weizhang_39,
R.drawable.kuaidi_39,
R.drawable.jiahao_45};
//定义图标下方的名称数组
privateString[]name={
"
订单查询"
转账"
手机充值"
信用卡还款"
水电煤"
违章代缴"
快递查询"
更多"
};
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
GridViewgridview=(GridView)findViewById(R.id.gridview);
intlength=imageRes.length;
//生成动态数组,并且转入数据
ArrayList<
HashMap<
String,Object>
lstImageItem=newArrayList<
();
for(inti=0;
i<
length;
i++){
HashMap<
map=newHashMap<
map.put("
ItemImage"
imageRes[i]);
//添加图像资源的ID
ItemText"
name[i]);
//按序号做ItemText
lstImageItem.add(map);
}
//生成适配器的ImageItem与动态数组的元素相对应
SimpleAdaptersaImageItems=newSimpleAdapter(this,
lstImageItem,//数据来源
R.layout.item,//item的XML实现
//动态数组与ImageItem对应的子项
newString[]{"
"
},
//ImageItem的XML文件里面的一个ImageView,两个TextViewID
newint[]{R.id.img_shoukuan,R.id.txt_shoukuan});
//添加并且显示
gridview.setAdapter(saImageItems);
//添加消息处理
gridview.setOnItemClickListener(newAdapterView.OnItemClickListener(){
publicvoidonItemClick(AdapterView<
parent,Viewview,intposition,longid){
Toast.makeText(MainActivity.this,name[position],Toast.LENGTH_LONG).show();
});