badgeView 如何实现 GridView 中imageview 右上角数字提醒?

songxiaobo 发布于 2013/09/22 15:30
阅读 4K+
收藏 0


问题:我想要利用badgeview 实现在gridview中如此的效果?

其中在gridview中


 Integer[] m_ImageID=
                    {
                        R.drawable.a1,R.drawable.a2,R.drawable.a3,
                        R.drawable.a4,R.drawable.a5,R.drawable.a6,
                        R.drawable.a7,R.drawable.a8,R.drawable.a9,
                        R.drawable.a4,R.drawable.a5,R.drawable.a6,
                    };

String[] m_ImagetTxt=
                    {
                    "通知",
                    "事件",
                    "部件",
                    "核实",
                    "处置",
                    "核查",
                    "录入",
                    "查询",
                    "统计",
                    "签到",
                    "功能",
                    "退出",
                    };

   GridView m_GridView=(GridView)findViewById(R.id.gridView);
            
                // 生成动态数组,并且转入数据   

                ArrayList<HashMap<String, Object>> lstImageItem = new ArrayList<HashMap<String, Object>>();

                for (int i = 0; i < m_ImageID.length; i++) {   
                    HashMap<String, Object> map = new HashMap<String, Object>();
                    map.put("ItemImage", m_ImageID[i]);// 添加图像资源的ID   
                    map.put("ItemText", m_ImagetTxt[i]);// 按序号做ItemText   
                    lstImageItem.add(map);   
                }

                
                // 生成适配器的ImageItem <====> 动态数组的元素,两者一一对应   

                SimpleAdapter saImageItems = new SimpleAdapter(this, // 没什么解释   

                        lstImageItem,// 数据来源  

                        R.layout.main_gridview,// gridview的XML实现  

                        // 动态数组与ImageItem对应的子项   

                        new String[] { "ItemImage", "ItemText"},

                        // ImageItem的XML文件里面的一个ImageView,两个TextView ID   

                        new int[] { R.id.ItemImage, R.id.ItemText });

加载中
0
kenping
kenping

FrameLayout/RelativeLayout都能实现这种效果,简单实用,完全没必要用第三方控件

<FrameLayout>
    <TextView
        ....
        android:drawableTop=""
        ...
        />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/red_oval"
        android:textColor="@android:color/white"
        android:layout_gravity="top|right"/>
<FrameLayout>

drawable/red_oval.xml
<shape shape="oval">
    <solid android:color="@android:color/red"
</shape>

drawable/red_oval.xml
<shape shape="oval">
    <solid android:color="@android:color/red" />
</shape>

0
s
songxiaobo
楼主,谢谢你,关键问题是我要利用GridView生成菜单。
0
fneg
fneg
自己重写Adapter
0
s
songxiaobo
请教大侠们,代码如何?
返回顶部
顶部