您好,登錄后才能下訂單哦!
1. FrameAnimation
原理:多個關鍵幀按照順序快速(100毫秒)切換
三個要素:圖片/順序/時間
2. TweenAnimation
原理:系統通過改變View的大小 位置 角度 透明度
code和xml創建Animation
xml:簡單,不可動態改變
code:靈活,可以動態改變
缺點:只是視圖上改變了控件,控件實際的位置不變
3. PropertiesAnimation
能夠完全替代TweenAnimation,并且是真正的移動了控件的位置
使用Nineold開源項目,支持1.0以后所有版本
4. 開源項目
原理:一個項目,一個庫(被調用的jar包),
5. ViewPager
類似于ListView
二. 項目問題:
1. 歡迎頁面跳轉主頁面
2. 歡迎頁面主題
3. 機器人下落動畫
三. 項目技術點:
1. 判斷當前版本號
if (Integer.parseInt(Build.VERSION.SDK) >=
Build.VERSION_CODES.HONEYCOMB) {
2. 如何在2.x版本實現Actionbar
構成:back按鈕,圖標,標題,子標題,菜單
好處:菜單可視化,增加了back按鈕(取消back按鍵)
使用開源項目支持在Android2.x版本中實現Actionbar
開源項目:ActionbarSherlock
只需導入兩個:
1) 庫 : ActionBarSherlock-master/actionbarsherlock
2) Demo:ActionBarSherlock-master\actionbarsherlock-samples\demos
注意:項目和庫必須導入,如果項目和庫不在同一路徑編譯會出錯
3. 使用ABS庫實現Actionbar的步驟
1) Activity修改為繼承SherlockActivity
2) 將onCreateOptionsMenu方法參數的Menu類型改為sherlock
3) 將getMenuInflater()修改為getSupportMenuInflater()
4) 獲得Actionbar對象
5) 設置Actionbar屬性
6) back按鈕點擊事件
7) 增加菜單項,注意設置順序orderInCategory屬性和
shouAsAction屬性
8) 在2.x版本中會FC
you must Theme.Sherlock,Theme.Sherlock.Light
4. 側滑菜單
早期是由第三方App實現,Path FaceBook
使用開源項目SlidingMenu-master
5. 導入SlidingMenuDemo注意事項
slidingmenu的庫項目有錯誤,修改SlidingFragmentActivity
繼承SherlockFragmentActivity
6. 使用SlidingMenu開源項目的步驟:
1) Activity繼承SlidingFragmentActivity
onCreate()方法修改為public
onCreateOptionsMenu()參數改為sherlock
getMenuInflater()修改為getSupportMenuInflater()
2) 清單中設置主題為:Theme.sherlock.Light.DarkActionbar
3) 設置側滑菜單的布局
4) 設置SlidingMenu屬性(參照SlidingMenu的Demo BaseActivity類)
7. Fragment的作用和用法
應用場景: 當一個Activity的局部或整體需要頻繁的被替換
需要使用Fragment。
8. 創建Fragment的方法
1) 新建一個類,繼承supportV4包的Fragment
2) 重寫onCreateView()方法,并關聯布局
9. 在Activity中使用Fragment步驟:
1) 將Activity修改為繼承FragmentActivity
2) 在布局中增加一個FrameLayout并設置id,
用來確定Fragment加入到布局中的位置和大小
3) 在onCreate()方法的setContentView之后新增代碼:
10. 動態添加、刪除和替換Fragment
1) 動態增加
2) 動態刪除
3) 動態替換
常見問題:
1. 導入開源項目庫是,控制臺提示錯誤:
[2014-08-13 11:16:04 - EX10_使用ABS庫實現Actionbar] Found 2 versions of android-support-v4.jar in the dependency list,
[2014-08-13 11:16:04 - EX10_使用ABS庫實現Actionbar] but not all the versions are identical (check is based on SHA-1 only at this time).
[2014-08-13 11:16:04 - EX10_使用ABS庫實現Actionbar] All versions of the libraries must be the same at this time.
[2014-08-13 11:16:04 - EX10_使用ABS庫實現Actionbar] Versions found are:
[2014-08-13 11:16:04 - EX10_使用ABS庫實現Actionbar] Path: F:\Users\longleg\workspaceHomeWork3\EX10_使用ABS庫實現Actionbar\libs\android-support-v4.jar
[2014-08-13 11:16:04 - EX10_使用ABS庫實現Actionbar] Length: 621451
[2014-08-13 11:16:04 - EX10_使用ABS庫實現Actionbar] SHA-1: 5896b0a4e377ac4242eb2bc785220c1c4fc052f4
[2014-08-13 11:16:04 - EX10_使用ABS庫實現Actionbar] Path: F:\Users\longleg\workspaceHomeWork3\lib_ABS\libs\android-support-v4.jar
[2014-08-13 11:16:04 - EX10_使用ABS庫實現Actionbar] Length: 271754
[2014-08-13 11:16:04 - EX10_使用ABS庫實現Actionbar] SHA-1: 53307dc2bd2b69fd5533458ee11885f55807de4b
[2014-08-13 11:16:04 - EX10_使用ABS庫實現Actionbar] Jar mismatch! Fix your dependencies
問題原因:是由于android-supportV4包有多個版本,
不同版本之間的代碼不同
解決方法:1) 使它們相同
2) 使庫中的jar是最新版本,將項目中的supportV4刪除
2. 代碼中輸入ActionBar actionBar = getActionBar();
Multiple markers at this line
- The value of the local variable actionBar is not used
- Call requires API level 11 (current min is 8):
android.app.Activity#getActionBar
3. 項目導入庫設置后再查看屬性,仍然提示錯誤
原因:
1) 項目和庫不在同一個目錄下
2) eclipse環境問題,重啟eclipse即可
4. java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.ex_templete/com.example.ex_templete.MainActivity}: java.lang.IllegalStateException: Both setBehindContentView must be called in onCreate in addition to setContentView.
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。