第一次寫博客,可能裏面的不少內容會比較不規範點,但願你們體諒下。主要是想把本身學習Android的經歷分享給你們,我是一個從沒有任何基礎的狀況下開始學習Android的開發,我但願個人學習經歷能幫助到一些一樣沒有任何基礎然而想學習Android的朋友們。前端
(1)、目標 java
學習安卓的開發咱們最近的目標就是可以本身獨立開發APP的能力。android
獨立完成一個App的分解:web
1) 搭建框架
2) 開發功能
3) 快速學習能力
4) 解決問題能力
5) 英文文檔閱讀能力
6) 調試技術
階段目標:
1) 掌握項目開發流程
2) 瞭解項目成員組成結構
PC
c/C++/Delphi 單機
web
JAVAEE/.net/PHP/Python/Ruby ROR/NodeJS
MobileInternet
JAVASE Objective C(Swift) C#
2. 移動互聯網項目成員組成結構
1) 美工
2) 項目經理
3) 服務端工程師
4) Android工程師
5) iOS工程師
6) 前端工程師
7) 產品經理
8) 測試工程師
9) 交互設計師UI/UE
必須
1) 服務端工程師
2) Android工程師
3) iOS工程師
3. 產品
微信
|
|
|
|
|
產品
|
項目
|
|
|
|
項目
|
模塊
|
|
|
|
模塊
|
一類流程的集合
|
|
|
|
流程
|
若干功能
|
|
|
|
4. 項目框架
功能:組織多個模塊
常見的類型:
1) Tab頁面
2) 側滑菜單
5. 分析App通用功能
1) 歡迎頁面
2) 新手引導
3) 主頁框架
4) 列表
5) Banner輪播圖
6) 用戶管理
註冊、登錄、忘記密碼、短信驗證、第三方帳號(新浪微博)
7) 收藏/瀏覽歷史
8) 設置
僅wifi下載圖片
夜間模式
意見反饋
升級
分享
關於
註銷
9) 支付
10) 搜索
6. 經常使用的技術
1) ViewPager
2) 安全 第三方接口
3) 數據庫
4) HTTP
5) 異步
6) JSON
7) 複用
8) 工具類
9) IOC DI
二. 項目框架搭建
1. 歡迎頁面
做用:加載資源,經過進度顯示代表軟件正在運行
分析
1) 簡單佈局(圖片 + 文字)
2) 2秒鐘後自動跳轉
3) 有動畫
4) 有廣告(跳過)
5) 沒有標題欄
6) 不能回退
Android碎片化問題
1) 多種定製ROM
小米 三星 華爲
2) 多個操做系統版本共存
8 2.2
9~10 2.3 phone
11~13 3.0~3.2 pad 不開源
14~20 4.0~4.4 phone + pad
21 5.0
2. 新手引導頁
分析:
1) 多張圖片水平滑動切換
2) 第一次顯示
3) 不能回退
4) 跳過按鈕
5) 當即體驗
三、 Fragment(片斷)的建立步驟
1.首先你須要的建立一個類去繼承SupporV4的Fragment
2. 重寫onCreateView()方法,關聯一個佈局
注意點:關聯佈局的時候你須要找你的佈局,而後用你當前佈局對象去找你佈局上的控件,記住必定要用當前佈局的對象,不然到時候會出現空指針的問題。這邊不少人會忘記,因此須要注意點。
當你在佈局中拖拉Fragment的時候須要給Fragment一個id。
ViewPager的使用,在佈局中隨意的拖拉一個控件,而後將其屬性改爲 ViewPager。
4.靜態使用Fragment的方法(瞭解)
1) 修改當前類,繼承FragmentActivity
2) 拖拽一個Fragment到當前佈局中
5. 動態的使用Fragment的步驟:
1) 在Activity佈局中添加一個FrameLayout,用來肯定Fragment動態添加的位置
2) 代碼中動態添加Fragment,能夠在代碼中進行片斷的添加,刪除,修改
6.佈局中的Button快捷註冊事件的方法
1) 在Activity的佈局中,Button控件中添加一個屬性
android:onClick,
值爲方法名稱
2) 方法命名規則:public void開頭,參數爲View v
7.
動態使用的Fragment與Activity之間的交互
Activity調用Fragment中的方法
1) 在Activity中調用fragment的changeText()方法
2) 在Fragment中查找到TextView控件
3) 在Fragment中新建方法,改變TextView內容
Fragment 調用Activity中的方法
1) 在Fragment中經過
getActivity() 得到Activity對象,並調用Activity的方法
2) 在Activity中新增changeText()方法
8.在建立Fragment的時候所遇的常見的問題以及解決方法;
1. @android:style/Theme.Holo.Light.NoActionBar
requires API level 13 (current min is 8)
Class requires API level 11 (current min is 8): android.app.Fragment
解決:ApI的版本不同,你只須要將版本改爲同樣的就能夠了
2.AndroidRuntime(4103): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.ex_templete/com.example.ex_templete.MainActivity}: android.view.InflateException: Binary XML file line #28: Error inflating class fragment
日誌提示的緣由:
06-02 07:47:59.154: E/AndroidRuntime(4103): Caused by: java.lang.ClassCastException: com.example.ex_templete.MyFragment cannot be cast to android.app.Fragment
緣由:繼承的Activity內部只能添加 android.app.Fragment的片斷,不支持supportV4的Fragment
解決:修改繼承FragmentActivity