用法
在你的view xml中添加组件定义,如下示例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
<? 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 buttontotalSpacingDegree
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定义之后,可按以下代码添加子菜单:
1
2
3
4
5
6
7
8
|
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:
1
2
3
4
5
|
menu.setOnItemClickedListener( new SateliteClickedListener() { public void eventOccured( int id) { Log.i( "sat" , "Clicked on " + id); } }); |
The click event gives the ID of the item which was defined when adding it.
全站熱搜
留言列表