學習android第一天
學習教程:《第一行代碼》 郭霖著
了解android
-
四大組件
活動+服務+廣播接收器+內容提供器 -
豐富的系統控制元件
-
SQLite資料庫
輕量級、運算速度極快的嵌入式關系型資料庫 -
強大的多媒體
超級酷,期待 -
地理位置定位
GPS LBS
分析android程式

-
.gradle和.idea
這兩個目錄下放置AS自動生成的檔案 -
app
放置專案中的代碼、資源等內容 -
build
包含編譯時自動生成的檔案 -
gradle
這個目錄下包含了graddle wrapper的組態檔 -
.gitignore
這個檔案時用來將指定的目錄或檔案排除在版本控制之外的 -
build.gradle
這是專案全域的gradle構建腳本 -
gradle.properties
這個檔案是全域的gradle組態檔,這里配置的屬性將影響專案中所有gradle編譯腳本 -
gradlew和gradlew.bat
這兩個檔案是用來在命令列界面執行gradle命令的 -
HelloWorld.iml
iml檔案是所有IntelliJ IDEA 專案都自動生成的一個檔案,用于標志這是一個Intelli IDEA專案 -
local.properties
這個檔案用于指定本機中的Android SDK路徑 -
settings.gradle
這個檔案用于指定專案中所有引入的模塊
app目錄詳解

-
build
這個目錄和外層的build目錄相似,包含編譯時自動生成的檔案 -
libs
jar包放在這個目錄下 -
androidTest
用于撰寫Android Test測驗用例的,可以對專案進行一些自動化測驗 -
Java
放置所以Java代碼的地方 -
res
在專案中使用到的所有圖片、布局、字串等資源都存放在這個目錄下
這個目錄有很多子目錄,圖片—drawable、布局—layout、字串—values -
AndroidManifest.xml
這是整個Android專案的組態檔,在程式中定義的所有四大組件都需要在這個檔案中注冊
還可以在這個檔案中給應用程式添加權限宣告 -
test
用于撰寫Unit Test測驗用例,是對專案進行自動化測驗的另一種方式 -
.gitignore
這個檔案用于將app模塊內的指定的目錄或檔案排除在版本控制之外,作用和外層的.gitignore檔案類似 -
app.iml
IntelliJ IDEA專案自動生成的檔案 -
proguard-rules.pro
這個檔案用于制定專案代碼的混淆規則
注冊活動
Android-Manifest.xml檔案中有如下代碼
<activity android:name=".HelloWorldActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
所有活動都必須在AndroidManifest.xml中注冊
其中intent-filter中的兩行代碼很重要,表示了HelloWorldActivity是這個專案的主活動
打開HelloWorldActivity代碼,如下:
public class HelloWorldActivity extends AppCompatActivity{
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.hello_world_layout);
}
}
注意:
- HelloWorldActivity是繼承自AppCompatActivity
- Activity是Android系統提供的一個基類,專案中所有活動都必須繼承他它或者它的子類才能擁有活動的特性
- AppCompatActivity是Activity的子類
- onCreate()方法是一個活動被創建時必定要執行的方法
Android程式設計講究 邏輯 和 視圖 分離
通常是 在布局檔案中撰寫界面,然后在活動中引入進來
布局檔案定義在res/layout目錄下
專案中的資源
打開res目錄可以看到很多檔案夾
drawable—圖片
mipmap—應用圖示
values—字串、樣式、顏色等配置
layout—布局檔案
為了兼容多種設備,我們可能需要建立多個檔案夾
那么如何使用這些資源呢
打開res/values/strings.xml檔案
<resources>
<string name="app_name">HelloWorld</string>
</resources>
這里定義了一個應用程式名的字串,可以通過以下兩種方式參考
- 在代碼中通過R.string.app_name可以獲得該字串的參考
- 在XML中通過@string/app_name可以獲得該字串的參考
語法如上,可根據資源型別替換string/drawable/mipmap/layout
build.gradle檔案
Android的日志工具 Log
可以使用Android中的日志工具類Log中的五個方法列印日志
- Log.v() 列印瑣碎、意義小的資訊
- Log.d() 列印一些除錯資訊
- Log.i() 列印一些重要資料
- Log.w() 列印一些警告資訊
- Log.e() 列印程式中的錯誤資訊
對應級別:error>warn>info>debug>verbose
快捷輸入:
要列印一條debug級別的日志,只需輸入logd,然后按下Tab,即可自動補全一條完整的列印陳述句,其他的以此類推
Log所有的列印方法都需要輸入兩個引數,第一個引數是tag,一般傳入當前的類名,主要用于對列印資訊的過濾;第二個引數是msg,即想要列印的具體內容,
每次都寫一遍tag顯然很麻煩,我們可以在onCreate()方法的外面輸入logt,然后按下Tab,就會以當前的類名作為值自動生成一個TAG常量
public class HelloWorldActivity extends AppCompatActivity{
private static final String TAG = "HelloWorldActivity";
……
}
總結
第一天嘗試記錄博客,雖然有些耗費時間,但是這種方式確實可以加深我的印象和理解,同時我也更好的發現以前遺漏疏忽的地方,更加細致,
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/258978.html
標籤:其他
