日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android Studio 单刷《第一行代码》系列 01 —— 第一战 HelloWorld

發(fā)布時間:2025/3/21 Android 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android Studio 单刷《第一行代码》系列 01 —— 第一战 HelloWorld 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前言(Prologue)

本系列將使用 Android Studio 將《第一行代碼》(書中講解案例使用Eclipse)刷一遍,旨在為想入坑 Android 開發(fā),并選擇 Android Studio 作為開發(fā) IDE 的同學(xué)開路。
PS:其實我就是現(xiàn)學(xué)現(xiàn)賣,希望我能堅持刷完。

系列目錄在此:

  • Android Studio 單刷《第一行代碼》系列目錄

關(guān)鍵詞

《第一行代碼》:CSDN 知名博主郭霖所著,Android 入門書籍。
Android Studio :谷歌目前主推的 Android 開發(fā) IDE 工具。

戰(zhàn)前準備

  • Android Studio 下載、安裝:請參考?stormzhang?的?Android Studio 系列教程。
  • 《第一行代碼》一本:或者電子書之類的,反正我是買了一本實體書。(PS:我會盡量寫的完整,但不保證沒有書籍對照的情況下你能完全看懂,畢竟本人水平有限。)
  • Android 手機一部:由于眾所周知的模擬器太慢,再加上我的筆記本電腦實在太古老了,跑模擬器太卡,我將使用真機進行開發(fā)、調(diào)試。(你可以使用模擬器,具體怎么使用請參考上面提到的?stormzhang?的系列教程)

摘要(Abstract)

第一戰(zhàn),必然是 Hello world!目標:創(chuàng)建一個 APP project,運行、查看目錄結(jié)構(gòu)。

創(chuàng)建 HelloWorld

打開 Android Studio,選擇 Start a new Android Studio project,此時會彈出創(chuàng)建 Android 項目的對話框,填好 Application name(應(yīng)用名稱),選擇好 project location(項目路徑),然后點 Next。如下圖

接下來選擇 Minimum SDK(程序最低兼容版本),下面還有一個說明(your app will run on approximately 90.4% of the devices that are active on the Google Play Store) 會告訴你選擇這個最低兼容版本大約可以支持多少設(shè)備。當然這是來自 Google Play Store 的數(shù)據(jù),國內(nèi)的話僅供參考吧。我選擇 5.0 試了一下,悲催的 < 0.1%,老老實實的選擇 4.0 吧,然后點Next。如下圖

接下來選擇 Activity(活動界面),我們選擇 Blank Activity,繼續(xù)點Next。我們需要給你剛剛選擇的 Blank Activity 起名。Activity Name 我們填 HelloWorldActivity,下面的 Layout Name、Title、Menu Resource Name 都會自動跟著改變。如下圖

最后點擊Finish,OK,項目創(chuàng)建完成。

運行

點擊工具欄中的綠色小箭頭,或者按 Shift+F10 運行項目(在此之前請將你的手機連接到電腦,或者創(chuàng)建好一個模擬器)。如下圖

經(jīng)過一番艱苦卓絕的編譯之后,彈出了 Choose Device 的對話框,這里選擇你的手機或模擬器,然后點擊 OK。(PS:這里可以選擇 Use same device for future launches. 復(fù)選框,這樣以后運行就會默認選擇的設(shè)備,不需要每次都選擇設(shè)備了。)

看到熟悉的 Hello world 了吧。好了,就這樣我們打響了 Android 戰(zhàn)場的第一槍,Hello World 功不可沒。

分析第一個 Android 程序

來看一下我們的項目目錄結(jié)構(gòu)吧,默認是這樣的。如下圖

可以看到跟書中的 Eclipse 結(jié)構(gòu)有很大區(qū)別,反正我是看不習(xí)慣(因為搞Java用Eclipse用慣了)。點擊上圖中紅圈的地方,我們切換到 Project 模式。如下圖

和書中所講的 Eclipse 目錄有一些區(qū)別:

  • 上圖目錄中將 java 代碼和資源文件(圖片、布局文件等)全部歸結(jié)為 src,在 src 目錄下有一個 main 的目錄,同時劃分出 java 和 res 兩個目錄, java 目錄則相當于 Eclipse 下的 src 目錄,res 目錄結(jié)構(gòu)則一樣。
  • java 目錄:放置所有 java 代碼,展開后可以看到剛才創(chuàng)建的 HelloWorldActivity 文件。
  • res 目錄:放置項目中使用到的所有圖片、布局、字符串等資源,后面再詳細說明。
  • libs 目錄:放置項目中使用的第三方包,后面用到的時候再詳細說明。
  • AndroidManifest.xml:整個項目的配置文件,在程序中定義的所有四大組件都需要在這個文件里注冊。后面用到的時候再詳細說明。

書中還提到幾個目錄和文件:

  • gen
  • assets
  • bin
  • project.properties

這些在 Android Studio 創(chuàng)建的項目中并沒有找到,但是他們都有對應(yīng)的目錄或文件,后面用到的時候再詳細說明。

分析項目是如何運行的

AndroidManifest.xml

打開文件可以找到如下代碼:

<activityandroid:name=".HelloWorldActivity"android:label="@string/app_name" ><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity>

這段代碼表示對 HelloWorldActivity 這個活動進行注冊,沒有注冊的活動是不能使用的。其中 intent-filter 里的兩行代碼非常重要,表示 HelloWorldActivity 是這個項目的主活動,項目運行時首先啟動這個活動。

HelloWorldActivity

打開文件可以找到如下代碼:

@Override protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_hello_world); }

onCreate() 方法是一個活動被創(chuàng)建時必定要執(zhí)行的方法。Android 程序的設(shè)計講究邏輯和視圖分離。其中第二行調(diào)用了 setContentView() 方法,這個方法為當前活動引入了一個 activity_hello_world 布局,用來顯示當前活動的視圖。

activity_hello_world.xml

布局文件都是定義在 res/layout 目錄下的,找到并打開文件,找到如下代碼:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".HelloWorldActivity"><TextView android:text="@string/hello_world" android:layout_width="wrap_content"android:layout_height="wrap_content" /></RelativeLayout>

其中的 TextView 是 Android 提供的一個控件,可以用來顯示文字。
這句代碼?android:text="@string/hello_world"?是用來定義顯示的文字內(nèi)容的,其中引用了定義在 res/values/strings.xml 中的 hello_world 字符串。
Android 不推薦在程序中對字符串進行硬編碼,通常是把字符串定義在 res/values/strings.xml,然后可以在布局文件或代碼中引用。大家可以找到該文件,打開看看。

這里還有一個問題要說明:可能大家在打開 activity_hello_world.xml 這個文件時看到的并不是上面代碼里的樣子。如下圖

這里明明顯示著 android:text="Hello world!",和我上面貼的代碼不一樣啊。其實把鼠標移到上面看看,或者點一下你就知道了。這應(yīng)該是 Android Studio 的一個特性吧。

項目資源 res

首先看一下 res 的目錄結(jié)構(gòu),如下圖

1. mipmap

用來放圖片的。跟書中 Eclipse 中生成的有些區(qū)別,mipmap-hdpi 等代替了 drawable-hdpi。用法上區(qū)別不大,在引用時使用 @mipmap 就行了。我 Google Baidu 了一下,在 eoe 論壇里有人這么說。

Mipmaps早在Android2.2+就可以用了,但是直到4.3 google才強烈建議使用。把圖片放到mipmaps可以提高系統(tǒng)渲染圖片的速度,提高圖片質(zhì)量,減少GPU壓力。so,do it。

2. layout

用來放布局文件的。

3. values

用來放字符串的。

4. menu

用來放菜單文件的。

其它(Miscellaneous)

盡管我試圖在本文中盡量完整的進行描述,但受限于篇幅和我的個人水平,本文難免有所遺漏,歡迎在評論中指出。
如果您覺得閱讀本文對您有幫助,請點一下“推薦”按鈕,您的“推薦”將是我最大的寫作動力!

關(guān)于作者(About Me)

addict
原文鏈接:http://www.cnblogs.com/DebugLife/p/4341702.html

總結(jié)

以上是生活随笔為你收集整理的Android Studio 单刷《第一行代码》系列 01 —— 第一战 HelloWorld的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。