首页 > 代码库 > Android卫星菜单:android-satellite-menu
Android卫星菜单:android-satellite-menu
android-satellite-menu实现点击主按钮,会弹出多个围绕着主按钮排列的子按钮,从而形成一个卫星弹出式菜单。子按钮弹出和消失的动画效果都很棒。这种弹出式菜单按钮应用在Path2.0中。
用法
在你的view xml中添加组件定义,如下示例:
<?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:sat="http://schemas.android.com/apk/res/android.view.ext" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <android.view.ext.SatelliteMenu android:id="@+id/menu" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|left" android:layout_margin="8dp" sat:satelliteDistance="170dp" sat:mainImage="@drawable/ic_launcher" sat:totalSpacingDegree="90" sat:closeOnClick="true" sat:expandDuration="500"/> </FrameLayout>
属性有:
- satelliteDistance The distance of items from the center button
- totalSpacingDegree The degree between the first and the last item.
- closeOnClick Defines if the menu shall collapse after clicking on a menu item.
- expandDuration The duration of expand and collapse operations in milliseconds.
当在你的View XML定义之后,可按以下代码添加子菜单:
SatelliteMenu menu = (SatelliteMenu) findViewById(R.id.menu); List<SatelliteMenuItem> items = new ArrayList<SatelliteMenuItem>(); items.add(new SatelliteMenuItem(4, R.drawable.ic_1)); items.add(new SatelliteMenuItem(4, R.drawable.ic_3)); items.add(new SatelliteMenuItem(4, R.drawable.ic_4)); items.add(new SatelliteMenuItem(3, R.drawable.ic_5)); items.add(new SatelliteMenuItem(2, R.drawable.ic_6)); items.add(new SatelliteMenuItem(1, R.drawable.ic_2));
Each menu item takes the ID of the item and the drawable resource for the item.
In order to listen clicks on items:
menu.setOnItemClickedListener(new SateliteClickedListener() { public void eventOccured(int id) { Log.i("sat", "Clicked on " + id); } });
Android卫星菜单:android-satellite-menu
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。