我也发一个,gridview导航布局,导航图标右下角加数字标示
android开发吧
全部回复
仅看楼主
level 11
mcmcmcmc2 楼主
先来个图
2015年01月08日 02点01分 1
level 11
mcmcmcmc2 楼主
图标是gridview 里边放的自定义布局,先看自定义布局
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:padding="10dp"
android:layout_height="fill_parent">
<ImageView
android:id="@+id/item_gv_img"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:gravity="center"
android:layout_gravity="center"
android:paddingBottom="20dp"
android:scaleType="centerInside"/>
<TextView
android:id="@+id/item_gv_text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:gravity="center"/>
<TextView
android:id="@+id/item_gv_text1"
android:layout_width="20dp"
android:layout_height="20dp"
android:visibility="gone"
android:background="@drawable/red_oval"
android:layout_marginBottom="20dp"
android:layout_marginRight="10dp"
android:gravity="center"
android:layout_gravity="bottom|right"/>
</FrameLayout>
2015年01月08日 03点01分 2
level 11
mcmcmcmc2 楼主
改变item_gv_text1的背景,变成圆圈的
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="@color/red"/>
<corners android:topLeftRadius="10dp"
android:topRightRadius="10dp"
android:bottomRightRadius="10dp"
android:bottomLeftRadius="10dp"/>
</shape>
2015年01月08日 03点01分 3
level 11
mcmcmcmc2 楼主
然后重写baseadapter的getview
public View getView(int position, View convertView, ViewGroup parent) {
ListItemView listItemView = null;
if (convertView == null) {
listItemView = new ListItemView();
convertView = listContainer.inflate(R.layout.item_gridview_imgtext, null);
listItemView.text = (TextView)convertView.findViewById(R.id.item_gv_text);
listItemView.imageview = (ImageView)convertView.findViewById(R.id.item_gv_img);
listItemView.texthit = (TextView)convertView.findViewById(R.id.item_gv_text1);
convertView.setTag(listItemView);
listItemView.text.setText(listItems.get(position).get("ItemText").toString());
listItemView.imageview.setImageResource(Integer.parseInt(listItems.get(position).get("ItemImage").toString()));
}else {
listItemView = (ListItemView)convertView.getTag();
}
if(listItems.get(position).containsKey("ItemHit")){
String hit = listItems.get(position).get("ItemHit").toString();
if(Integer.parseInt(hit)>0){
listItemView.texthit.setText(hit);
listItemView.texthit.setVisibility(View.VISIBLE);
}
}
return convertView;
}
2015年01月08日 03点01分 4
level 11
mcmcmcmc2 楼主
然后写入数据就可以了
map.put("ItemImage", R.drawable.nav_main_download);
map.put("ItemText", getResources().getString(R.string.nav_center_download));
map.put("ItemHit", 4);
2015年01月08日 03点01分 5
level 11
mcmcmcmc2 楼主
ImageTextHitAdapter saItem = new ImageTextHitAdapter(this, meumList);
//添加Item到网格中
nav_gridView.setAdapter(saItem);
2015年01月08日 03点01分 6
level 12
帅气
2015年01月08日 03点01分 7
level 8
赞一个[真棒]
2015年01月08日 04点01分 8
1