circle menu android
1.0.0
只需从此处下载包并将其添加到您的项目类路径中,或者仅使用 Maven 存储库:
摇篮:
implementation ' com.ramotion.circlemenu:circle-menu:0.3.2 '
科学技术试验:
libraryDependencies += " com.ramotion.circlemenu " % " circle-menu " % " 0.3.2 "
行家:
< dependency >
< groupId >com.ramotion.circlemenu</ groupId >
< artifactId >circle-menu</ artifactId >
< version >0.3.2</ version >
</ dependency >
将CircleMenuView
放入布局中并设置按钮的图标和颜色,如下所示。
app:button_colors="@array/colors"
app:button_icons="@array/icons"
resvaluesbuttons.xml
中的数组colors
和icons
示例:
<? xml version = " 1.0 " encoding = " utf-8 " ?>
< resources >
< array name = " icons " >
< item >@drawable/ic_home_white_24dp</ item >
< item >@drawable/ic_search_white_24dp</ item >
< item >@drawable/ic_notifications_white_24dp</ item >
< item >@drawable/ic_settings_white_24dp</ item >
< item >@drawable/ic_place_white_24dp</ item >
</ array >
< array name = " colors " >
< item >@android:color/holo_blue_light</ item >
< item >@android:color/holo_green_dark</ item >
< item >@android:color/holo_red_light</ item >
< item >@android:color/holo_purple</ item >
< item >@android:color/holo_orange_light</ item >
</ array >
</ resources >
或者使用构造函数
CircleMenuView ( @ NonNull Context context , @ NonNull List < Integer > icons , @ NonNull List < Integer > colors )
以编程方式添加CircleMenuView
并配置按钮(在代码中)。
接下来,如下所示连接事件处理程序CircleMenuView.EventListener
,并重写您需要的方法。
final CircleMenuView menu = ( CircleMenuView ) findViewById ( R . id . circle_menu );
menu . setEventListener ( new CircleMenuView . EventListener () {
@ Override
public void onMenuOpenAnimationStart ( @ NonNull CircleMenuView view ) {
Log . d ( "D" , "onMenuOpenAnimationStart" );
}
@ Override
public void onMenuOpenAnimationEnd ( @ NonNull CircleMenuView view ) {
Log . d ( "D" , "onMenuOpenAnimationEnd" );
}
@ Override
public void onMenuCloseAnimationStart ( @ NonNull CircleMenuView view ) {
Log . d ( "D" , "onMenuCloseAnimationStart" );
}
@ Override
public void onMenuCloseAnimationEnd ( @ NonNull CircleMenuView view ) {
Log . d ( "D" , "onMenuCloseAnimationEnd" );
}
@ Override
public void onButtonClickAnimationStart ( @ NonNull CircleMenuView view , int index ) {
Log . d ( "D" , "onButtonClickAnimationStart| index: " + index );
}
@ Override
public void onButtonClickAnimationEnd ( @ NonNull CircleMenuView view , int index ) {
Log . d ( "D" , "onButtonClickAnimationEnd| index: " + index );
}
});
您可以使用open(boolean animate)
和close(boolean animate)
方法以编程方式打开和关闭菜单
以下是您可以通过 XML 或相关设置器指定的属性:
button_icons
- 按钮图标数组。button_colors
- 按钮颜色数组。icon_menu
- 菜单默认图标。icon_close
- 菜单关闭图标。icon_color
- 菜单图标颜色。duration_ring
- 铃声效果持续时间。duration_open
- 菜单打开动画持续时间。duration_close
- 菜单关闭动画持续时间。distance
- 中心按钮和按钮之间的距离Circle Menu Android 是在 MIT 许可下发布的。有关详细信息,请参阅许可证。
该库是我们精选的最佳 UI 开源项目的一部分
如果您在项目中使用开源库,请确保注明并反向链接到 www.ramotion.com
在我们的 Android 应用程序中尝试这个 UI 组件和更多类似的组件。如果有兴趣请联系我们。