在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Android/ Android Hello World示例
Android 應用組件
使用布局文件自定義Android組件
Android通知
Android主題示例
Android JetPlayer實例
Android MediaPlayer(多媒體播放)
Android AbsoluteLayout
Android FrameLayout
Android Gestures/手勢
Android AutoCompleteTextView(自動完成)實例
Android 資源組織和訪問
Android ListView
Android GridView
Android數(shù)據(jù)備份
Android撥打電話
Android發(fā)送短信/SMS
Android ProgressDialog
SimpleCursorAdapter
Android發(fā)送電子郵件
Android Activity
Android TextView
Android事件處理
Android TableLayout
Android加載Spinner
Android內容提供者
Android自定義字體
Android Service
Android CheckBox
Android Intent過濾器
Android LinearLayout
Android登錄實例
Android RadioButton
Android樣式和主題
Android自定義組件及屬性
Android UI控件
Android Animation(動畫)實例
Android Camera(攝像頭)
Android ToggleButton
Android Clipboard(復制/剪貼板)
Android音頻捕獲(錄音)
發(fā)布Android應用
Android Alertdialog(警告對話框)
Android圖片效果
Android內部存儲
Android基于位置服務
Android RadioGroup
Android AutoCompleteTextView
Android Bluetooth(藍牙)實例
Android RelativeLayout
Android最佳實踐
Android本地化
Android自定義組件
Android教程
Android 架構
Android UI布局
Android Button
Android Hello World示例
Android音頻管理器實例
ArrayAdapter
Android拖放
Android碎片/片段
Android圖片切換
Android JSON解析器
Android開發(fā)環(huán)境搭建
Android Spinner
Android樣式示例
使用活動代碼自定義Android組件
Android ImageButton
Android EditText
Android廣播接收器

Android Hello World示例

在開始使用Android SDK編寫第一個示例之前,必須確保已經(jīng)按照Android環(huán)境設置教程中的說明正確設置了您的Android開發(fā)環(huán)境。

下面來看看如何編寫一個簡單的Android應用程序,它將打印“Hello World!”。

注:理解這篇教程,對后面的學習非常重要。了解項目中每個目錄和每個文件的功能和作用。

創(chuàng)建Android應用程序

第一步是使用Android Studio創(chuàng)建一個簡單的Android應用程序。 當點擊Android Studio圖標啟動完成時,它將顯示如下所示的屏幕 -

可以通過調用Start a new Android Studio Project 來開始創(chuàng)建應用程序開發(fā)。 在新的安裝框架中應詢問應用程序名稱,包裝信息和項目的位置。

輸入應用程序名稱(HelloWorld)后,選擇應用程序運行的Android目標設備,在這里需要指定最小的SDK,在這個教程中,選擇最小SDK為 API 21:Android 5.0(Lollipop) -

下一級安裝應該包含選擇移動設備的活動,它指定應用程序的默認布局。

選擇一個空的Activity,如下所示 -

配置Activity,默認即可,點擊完成。如下所示 -

在完成之后,開發(fā)開發(fā)工具將顯示如下界面,我們可以開始編寫應用程序的代碼了。

運行應用程序

下面來看看,如何運行這個"Hello World!" 應用程序。假設您在創(chuàng)建環(huán)境的時候創(chuàng)建了AVD。 要從Android Studio運行應用程序,請打開項目的一個活動文件,然后單擊工具欄上的“運行app”圖標。如下圖中箭頭指向的位置 -

選擇發(fā)布目標,如下圖所示 -

注意:在這個過程中,Android Studio 可能需要安裝一些其它的依懶組件,這就要求必須能連接到互聯(lián)網(wǎng)絡了。安裝過程如下 -

Android Studio 在配置的AVD上安裝應用程序并啟動它,如果您的設置和應用程序一切正常,它將顯示以下“模擬器”窗口 -

Android項目結構概述

以下是Android Studio中的的項目結構圖:

下面對上面文件或目錄的解釋 -

編號 文件或目錄 描述
1 AndroidManifest.xml 這是清單文件,它描述了應用程序的基本特征并定義了它的每個組件。
2 java 這包含項目的.java源文件。 默認情況下,它包含一個具有活動類的MainActivity.java源文件,該Activity類在應用程序使用應用程序圖標啟動時運行。
3 res/drawable 以前的Android版本使用這個文件夾來存儲圖像,當前版本使用mipmap文件夾來存儲圖像。這個目錄幾乎不再使用。
4 res/layout 這是定義應用程序用戶界面的文件的目錄。
5 res/menu 包含將顯示在操作欄上的項目的XML菜單文件夾
6 res/mipmap 使用來包含mipmap圖像
7 res/values 這是包含資源集合(如字符串和顏色定義)的其他各種XML文件的目錄。

1. AndroidManifest.xml

無論您作為應用程序的一部分開發(fā)什么組件,都必須在AndroidManifest.xml中聲明其所有組件。這個文件作為Android OS和應用程序之間的接口,所以如果沒有在這個文件中聲明你的組件,那么操作系統(tǒng)將不會考慮它。 例如,默認清單文件將如下面的文件所示 -



2. res/mipmap

需要更多地了解mipmap文件夾中的圖像,請參閱下面的圖像,mipmap文件夾中有一個圖像文件。

在使用Android應用程序時偶爾遇到的一個問題是,比如看到的圖像比較模糊,像素化或笨拙地拉伸。 解決此問題的方法是為Android支持的每種密度創(chuàng)建一個可繪制的文件夾,并將正確縮放的圖像放在每個文件夾中。 Android支持6種不同的密度范圍(以每英寸點數(shù)衡量):

  • ldpi:低密度屏幕; 大約120dpi。
  • mdpi:中等密度(在傳統(tǒng)的HVGA)屏幕上; 大約160dpi
  • hdpi:高密度屏幕; 大約240dpi。
  • xhdpi:超高密度屏幕; 大約320dpi。 在API級別8中添加
  • nodpi:這可以用于位圖資源,不想縮放到匹配設備密度。
  • tvdpi:屏幕介于mdpihdpi之間; 大約213dpi。這不被視為“主要”密度組。 它主要用于電視機,大多數(shù)應用程序不需要它 - 為大多數(shù)應用程序提供mdpihdpi資源已足夠,系統(tǒng)將根據(jù)需要進行擴展。此限定符是在API級別13中引入的。

Android Activity生命周期

首先,了解Activity是什么?
Activity是支持屏幕或UI的Java代碼。換句話說,用戶界面的構建塊就是Activity。 Activity類是Android中的一個預定義類,每個擁有UI的應用程序都必須繼承它來創(chuàng)建窗口。
例如,MainActivity類是一個Activity,它從庫中的Activity類擴展而來。 下圖說明了一個Activity的生命周期。

Activity的一個生命周期描述了一個Activity開始啟動后的進程,直到應用程序關閉。 包括Activity暫時停止的進程,恢復等等。

為了更容易理解,可以修改MainActivity類的代碼,覆蓋onStart(),onResume()等方法,添加顯示方法已經(jīng)運行的消息。重新運行應用程序,看看會發(fā)生什么?

package com.yiibai.myapplication;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;

public class MainActivity extends AppCompatActivity {
    public static final String TAG ="MyMessage";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        // Print Log
        Log.i(TAG,"onCreate");
    }

    @Override
    protected void onStop() {
        super.onStop();
        // Print Log
        Log.i(TAG,"onStop");
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        // Print Log
        Log.i(TAG,"onDestroy");
    }

    @Override
    protected void onPause() {
        super.onPause();
        // Print Log
        Log.i(TAG,"onPause");
    }

    @Override
    protected void onResume() {
        super.onResume();
        // Print Log
        Log.i(TAG,"onResume");      }

    @Override
    protected void onStart() {
        super.onStart();
        // Print Log
        Log.i(TAG,"onStart");
    }

    @Override
    protected void onRestart() {
        super.onRestart();
        // Print Log
        Log.i(TAG,"onRestart");      }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        // Print Log
        Log.i(TAG, "onCreateOptionsMenu");
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Print Log
        Log.i(TAG, "onOptionsItemSelected");

        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        return super.onOptionsItemSelected(item);
    }
}

重新運行應用程序,并且看到記錄在logcat窗口上的消息。

可以將篩選器設置為logcat,只顯示日志記錄的消息。

過濾器名稱:My Filter
日志標記(正則表達式):MyMessage

現(xiàn)在,logcat 窗口只顯示指定的消息。

Android應用程序如何運行?

您已經(jīng)成功運行了第一個Android應用程序,現(xiàn)在來回顧一下從應用程序調用以來Android如何運行。

在“項目”窗口中看到的不是涉及創(chuàng)建應用程序的所有組件。有些組件是由編譯器程序自動生成的。 而且它不顯示在項目窗口上。 例如,根據(jù)項目中源文件的結構,編譯器將創(chuàng)建一個R.java 源文件,該文件為項目上的資源定義常量。
要在Android Studio上查看R.java 文件,請打開MainActivity類,右鍵單擊R.layout.main_activity,然后選擇執(zhí)行(Go to / Implementation)

R.java類中定義的常量是根據(jù)Project中的資源來創(chuàng)建的:

因此,在項目的某個地方,可以使用常量來引用項目中的資源。例如,R.layout.activity_main是一個常量,它表示res/layout文件夾中的activity_main.xml文件。

工作原理: