BadgeView对象可以结合其他控件可以在控件上面显示.具体用法可以自己百度,用起来很简单,我就不做多介绍了。
下面是我主要想表达的:
如果BadgeView与RadioGroup中的RadioButton结合后,RadioButton可以显示提示信息标志,但是就没办法切换界面了,这明显不是我想要的效果
但是前面我用Button来显示提示信息,还是可以点击跳转的,不影响其操作。
就想能不能两者结合起来呢。
答案是可以的。
思路就是把Button显示在RadioButton上面,而Button背景设为透明,这样用户看到的RadioButton。提示信息是捆绑在Button上面的哦,这个要注意。
下面是XML文件的代码
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="0.0dip"
android:layout_weight="1.0"/>
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0.0"
android:visibility="gone"/>
<RadioGroup
android:id="@+id/main_tab"
android:background="@drawable/maintab_toolbar_bg"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_gravity="bottom">
<RadioButton
android:layout_marginTop="2.0dip"
android:text="@string/main_home"
android:drawableTop="@drawable/icon_1_n"
android:id="@+id/radio_button0"
style="@style/main_tab_bottom"/>
<RadioButton
android:layout_marginTop="2.0dip"
android:text="@string/main_news"
android:drawableTop="@drawable/icon_2_n"
android:id="@+id/radio_button1"
style="@style/main_tab_bottom"/>
<RadioButton
android:layout_marginTop="2.0dip"
android:text="@string/main_my_info"
android:drawableTop="@drawable/icon_3_n"
android:id="@+id/radio_button2"
style="@style/main_tab_bottom"/>
<RadioButton
android:layout_marginTop="2.0dip"
android:text="@string/menu_search"
android:drawableTop="@drawable/icon_4_n"
android:id="@+id/radio_button3"
style="@style/main_tab_bottom"/>
<RadioButton
android:layout_marginTop="2.0dip"
android:text="@string/more"
android:drawableTop="@drawable/icon_5_n"
android:id="@+id/radio_button4"
style="@style/main_tab_bottom"/>
</RadioGroup>
</LinearLayout>
<!-- 实现提醒信息用的 -->
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:orientation="horizontal"
android:background="#00000000"
android:layout_alignParentBottom="true"
<Button
android:visibility="invisible"
android:layout_height="fill_parent"
android:layout_width="0dp"
android:layout_weight="1"
<!-- 显示提醒信息的button android:layout_weight=1 是3个button,平分手机界面的宽度-->
<Button
android:id="@+id/bt"
android:layout_height="fill_parent"
android:layout_width="0dp"
android:layout_weight="1"
android:background="#00000000"
<Button
android:visibility="invisible"
android:layout_height="fill_parent"
android:layout_width="0dp"
android:layout_weight="1"
<Button
android:visibility="invisible"
android:layout_height="fill_parent"
android:layout_width="0dp"
android:layout_weight="1"
<Button
android:visibility="invisible"
android:layout_height="fill_parent"
android:layout_width="0dp"
android:layout_weight="1"
</LinearLayout>
</RelativeLayout>
</TabHost>
本文
使用
上一篇文章 DrawCenterText
View
的一些知识,如果想要理解,请查看后再看本文
在首页导航菜单栏中,大多数都会有角标表示消息的数量,在网上找了一下,有角标的要么无法实现点击事件,要么就是一个角标样式的 Text
View
,并没有一个简单的
RadioButton
的角标设置,决定自定义一个简单的
Badge
RadioButton
,目前仅支持 drawableTop 的按钮,实现的效果如下:
二、实现原理
在 onDraw 方法中,根据 DrawableTop 图标的位置,选择右
公司的老项目底部导航
使用
的是
RadioButton
+ Fragment框架,最近有个新需求需要动态改变底部导航的样式,搜了很多文章都不太理想。最后就在准备放弃的时候,想到了Glide 可以把图片Url转为Drawable,拿到Drawable 后用代码写个selector,然后给
RadioButton
设置上去就行了,准备就绪,开干。
* 设置底部导航 RadioButto...
如果不添加
badgevie
w 点击是没有问题,如果添加了就点击不好使可以添加透明得button具体可以参考<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match
今天项目要求在底部导航栏添加红点显示,就引入的
BadgeVie
w类,实现出了下面的效果
看到这效果我很开心,满以为完美实现了,然后点击“我的”,发现
radiobutton
没有执行check方法,好吧,我就去网上找啊找啊,发现基本上都是推荐用
TabHost来实现,可是我不想用,太啰嗦。
最后,无语间发现了,可以再RadioGroup上浮一层透明layout,包含5个Button,与上图一一
问题,就像上图中,
radiobutton
和
badgevie
w
结合
使用
时,点击切换时,图片的没有正常切换。类似一些消息数目提示的需求,需要在底部导航的
RadioButton
上面显示消息提示数目。
底部导航用
RadioButton
,消息提示用
BadgeVie
w。
github上很多关于
BadgeVie
w的开源库
使用
起来很方便,简单的几行代码就实现消息提示
BadgeVie
w
badgeVie
w =
大多android应用都有一个底部菜单功能,点击其中一个按钮,切换到不同的界面。有很多实现方法,比较简单的是
使用
tabhost+
RadioGroup来实现。还有一般购物app,都有一个购物车按钮,当你买商品时候,购物车右上角显示一个购买数量提醒信息,实现方法也比较多。
下面就用其中一种方式实现上面的功能:切换按钮+提醒信息
C#中的
RadioButton
控件是一种用于提供单选选项的控件。它通常与其他控件一起
使用
,例如GroupBox或Panel控件,以创建选项卡或选项卡页面。
使用
RadioButton
控件非常简单。首先,您需要在窗体上拖放一个
RadioButton
控件。然后,您可以
使用
属性窗口或代码来设置
RadioButton
的属性,例如Text(显示在
RadioButton
旁边的文本)和Checked(指示
RadioButton
是否被选中)。
当用户单击
RadioButton
时,它会自动选中,并取消选中其他
RadioButton
。您可以
使用
事件处理程序来响应
RadioButton
的CheckedChanged事件,以便在用户更改选择时执行某些操作。
例如,以下代码演示了如何
使用
RadioButton
控件:
private void
radioButton
1_CheckedChanged(object sender, EventArgs e)
if (
radioButton
1.Checked)
// 执行某些操作
在这个例子中,当用户选中
RadioButton
时,将执行某些操作。您可以根据需要更改此代码,以便在用户更改选择时执行其他操作。
总之,
RadioButton
控件是一种非常有用的控件,可用于创建单选选项。它易于
使用
,并且可以与其他控件一起
使用
,以创建复杂的用户界面。