satellite-menu和ArcMenu

github上的開源庫其實仍是很不錯的,以前的時候總感受學一些開源庫比較麻煩,裏邊有好多方法什麼的,今天終於邁出了第一步,中間也遇到了一些問題,如今總結下,也給其餘剛開始學習開源庫的小夥伴一些指導:html

satellite-menu開源庫的地址:https://github.com/siyamed/android-satellite-menuandroid

先把這個開源庫下載下來,解壓,看到以下兩個項目和一個README文件。git

接下來把這兩個項目導入Eclipse(我這裏用的是Eclipse開發)github

導入後一切正常,沒有錯誤(若是有錯誤的話clean下就ok了),運行Package Explorer中的satellite-menu-sample,很快就能夠在android設備上看到效果了,效果以下:app

效果仍是蠻不錯的嘛,我就動手本身寫了一個項目,引用了開源庫satellite-menu,引用方法爲:佈局

 

引用完了以後呢?就開始寫代碼了,開始的時候能夠仿照下載的example中的例子寫學習

看着沒有什麼問題,咱們就繼續在佈局文件中添加控件,因爲初來乍到,惟恐在細節上擔憂出錯,就直接從example中複製過來,很多錯誤spa

我就習慣性的clean了一下,可是還有一個錯誤,一直沒有找到問題的所在,後來雖然發現了下面的代碼code

 xmlns:sat="http://schemas.android.com/apk/res/android.view.ext"

 

我認爲後邊的android.view.ext是開源類庫中的包名,也就沒在乎,在網上找了,也找到了答案,可是沒有說出緣由,我也就沒在乎,問題的確出在這個地方,這個地方填寫的包名是本項目的包名,當我把包名該爲我本身寫的項目的包名後,再clean下,奇蹟般的好了,以前沒有發現這些問題,如今居然發現了,這也是一種收貨吧。xml

下面就開始個人開源之旅……

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     xmlns:sat="http://schemas.android.com/apk/res/com.example.satellitemenudemo2"
 4     android:layout_width="fill_parent"
 5     android:layout_height="fill_parent"
 6     android:orientation="vertical" >
 7 
 8     <android.view.ext.SatelliteMenu
 9         android:id="@+id/menu"
10         android:layout_width="wrap_content"
11         android:layout_height="wrap_content"
12         android:layout_gravity="bottom|left"
13         android:layout_margin="8dp"
14         sat:closeOnClick="true"
15         sat:expandDuration="500"
16         sat:mainImage="@drawable/ic_launcher"
17         sat:satelliteDistance="170dp"
18         sat:totalSpacingDegree="90" />
19 
20     <TextView
21         android:id="@+id/textView1"
22         android:layout_width="wrap_content"
23         android:layout_height="wrap_content"
24         android:layout_gravity="bottom|left"
25         android:layout_margin="8dp" 
26         android:text="@string/app_name"/>
27 
28 </FrameLayout>

 簡單介紹下如下的幾個屬性:

sat:closeOnClick="true"          //true:選中item後自動關閉;false:選中item後不消失
sat:expandDuration="500"        //持續的時間
sat:satelliteDistance="170dp"       //item距離點擊menu的距離
sat:totalSpacingDegree="90"       //item所佔的角度

sat:mainImage="@drawable/ic_launcher" //(沒發現有什麼用)

參考地址:

Android衛星菜單:android-satellite-menu - OPEN 開發經驗庫 http://www.open-open.com/lib/view/open1390737573132.html

Unable to execute dex: Multiple dex files define Landroid錯誤解決 http://www.cnblogs.com/hxxy2003/archive/2013/04/09/3009416.html

 

兩個開源項目的研究:

siyamed/android-satellite-menu https://github.com/siyamed/android-satellite-menu

daCapricorn/ArcMenu https://github.com/daCapricorn/ArcMenu

相關文章
相關標籤/搜索