1. 程式人生 > >安卓學習LESSON6:編寫第一個APP(Activity與Layout)與 LOG日誌

安卓學習LESSON6:編寫第一個APP(Activity與Layout)與 LOG日誌

大概瞭解了安卓程式碼的結構,開發環境也都已經準備完畢,現在開始做一個簡單的APP,熟悉一下安卓程式碼除錯的過程,Activity檔案的一些功能控制,與佈局檔案的編寫,Activity中 setContentView方法中引數即所用的佈局檔案。
在這裡插入圖片描述

Android開發是基於一定框架的,所以很多程式碼根據API有一定的格式,自己新建完全新的JAVA類去編寫很麻煩,Android Studio對基礎程式碼框架已經做了整合,我們可以很方便的去新建不同的型別檔案,由AS去生成框架,我們只需要對內容進行填充即可。APP上單擊右鍵-》NEW 在下方即可選擇Activity,Service,xml等等檔案,並且每個檔案有很多種類供我們挑選。
選擇帶有特定功能的元件時,比如全屏的Activity時,會有很多相關程式碼其他,對於剛接觸來說並不是容易閱讀,為了對程式碼更加的瞭解,瞭解每一行程式碼的意義,以及他們所控制的功能,我會選擇最簡單的Empty Activity,然後去手動的對其他功能進行控制。
非常方便的,當我們新建了一個Activity後,AS會自動將layout檔案生成,也會在Manifest.xml中自動新增相應的配置,這就節省了很多時間,並且避免了很多認為錯誤。但是很遺憾刪除Activity時,AS僅僅會刪除Manifest中的相關配置,佈局檔案是需要去手動做處理的。
在這裡插入圖片描述

新建了一個Empty Activity後,介面如下。
在這裡插入圖片描述

第一個功能:全屏背景圖片

1.對其新增背景圖片,在佈局xml檔案<RelativeLayout>標籤中新增屬性android:background="@drawable/start_bg"
在這裡插入圖片描述
@drawable/start_bg 代表系統內部資源即res-》drawable->start_bg檔案
在這裡插入圖片描述

在 xml 檔案中引用資源
@[package:]type/name,其中 package 表示包名,如果在同一個包內引用,則不需要寫包名,例如:@style/AppTheme
@android:type/name,其中 android 表示引用 android 系統內部資源

在 java 檔案中引用資源
R.type.name,例如:R.layout.first_layout ,R.id.button_1
android.R.type.name,其中 android 表示引用 android 系統內部資源

參考:http://www.cnblogs.com/huangzenglie/p/8666685.html

2.對Activity設定全屏展示。
需要在Manifest.xml 中對Activity設定 android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
但是一時疏忽,我把屬性設定到application標籤中,而非 activity標籤中。
在這裡插入圖片描述


這時進行除錯時,模擬器彈出:很不幸,我的專案停止執行。
在這裡插入圖片描述
然後我再AS中想要檢視日誌。但是發現DEBUG中並沒有什麼報錯,只有Client not ready yet!像是異常,於是去百度,找錯,網上亂七八糟的說法,鬧了一個多小時才發現,這個console並不是真正的日誌。
Client not ready yet!並不算是報錯!
Android日誌是通過logcat進行檢視。
在這裡插入圖片描述
需要根據個人的情況,在網上去找如何使用LOGCAT的方法。
對於我來說很簡單,在Android Monitor頁籤中就有LOGCAT
參考:https://blog.csdn.net/u013383596/article/details/78257544
在這裡插入圖片描述

可以看到LOGCAT中就有了熟悉的報錯!對於熟悉JAVA開發的人來說這樣的報錯就非常親切了,很容易去定位解決問題,此時的錯誤資訊拿去百度也能更好的查詢到真正的錯誤原因。

然後將錯誤解決,模擬介面如圖,全屏顯示背景就OK了。到此,就可以在網上找一些簡單的APP專案跟著做了,在過程中注意積累DEBUG方法,API查詢方法就可以慢慢熟悉開發過程,就和我當初學習JAVA開發一樣。當對基礎開發流程,程式碼相對熟練後,可以開始補充基礎知識,整個Android框架實現原理,程式架構、開發效率等等內容。當對原理多瞭解實現方法後,不管多複雜的功能,其實都是對小功能的整合而已。
在這裡插入圖片描述