android-satellite-menu實現點擊主按鈕,會彈出多個圍繞着主按鈕排列的子按鈕,從而造成一個衛星彈出式菜單。子按鈕彈出和消失的動畫效果都很棒。這種彈出式菜單按鈕應用在Path2.0中。 java
在你的view xml中添加組件定義,以下示例: android
<?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>
屬性有: 動畫
當在你的View XML定義以後,可按如下代碼添加子菜單: spa
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. code
In order to listen clicks on items: xml
menu.setOnItemClickedListener(new SateliteClickedListener() { public void eventOccured(int id) { Log.i("sat", "Clicked on " + id); } });