谷歌官方安卓開發(fā)學習筆記(三)

開始為第一個用戶界面添加一個小功能
(注:android stdio的版本為3.0.1英支,不同版本可能存在一定的差異,學習時建議在谷歌官網(wǎng)下載最新版)

給按鈕添加功能

  • 打開 app > java > com.example.myfirstapp(你當初創(chuàng)建的文件名) > MainActivity 添加幾行代碼管嬉,現(xiàn)在暫時不了解這些代碼沒有關(guān)系,可以理解為給程序添加功能所必要的條件。

java版本

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    /** Called when the user taps the Send button */
    public void sendMessage(View view) {
        // Do something in response to button
    }
}

KOTLIN(2017年開始支持kotlin)

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }

    /** Called when the user taps the Send button */
    fun sendMessage(view: View) {
        // Do something in response to button
    }
}

添加了這些代碼后藻懒,你可能會看到如圖所示的許多小錯誤簇爆,下面我們來修復(fù)他們


image.png

選擇錯誤的地方革娄,然后按下快捷鍵option+enter 會出現(xiàn)快捷修復(fù)選項,我們選擇import class


image.png
  • 返回 activity_main.xml文件冕碟,我們添加button和這個sendmessage之間的關(guān)聯(lián)拦惋。
    選擇button,然后在屬性頁面中搜索oncilck(意思是當你觸碰這個按鈕時會觸發(fā)的功能)


    image.png

    我們選擇sendmessage安寺,也就是我們剛剛在代碼中添加的那一行功能厕妖。
    現(xiàn)在只要我們點擊這個按鈕,系統(tǒng)就會響應(yīng)sendmessage這一幾行代碼挑庶。

建立一個intend

intend通常用于兩個活動之間提供運行時綁定的對象

  • 在MainActivity言秸,添加EXTRA_MESSAGE和 sendMessage代碼(目前只提供java)
public class MainActivity extends AppCompatActivity {
    public static final String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    /** Called when the user taps the Send button */
    public void sendMessage(View view) {
        Intent intent = new Intent(this, DisplayMessageActivity.class);
        EditText editText = (EditText) findViewById(R.id.editText);
        String message = editText.getText().toString();
        intent.putExtra(EXTRA_MESSAGE, message);
        startActivity(intent);
    }
}

添加完后软能,你的代碼應(yīng)該是這個樣式的
(仍有部分錯誤:DisplayMessageActivity)


image.png

不過沒有關(guān)系,現(xiàn)在我們就來解決它

在project窗口中举畸,右鍵單擊app 文件夾選擇New > Activity > Empty Activity.

更改這個新的activity的名字為displaymessageactivity查排, 點finish

imag.png

添加文字反饋

我們創(chuàng)建好了這個新的空白的activity后,打開app > res > layout > activity_display_message.xml.

像之前學過的一樣抄沮,這次我們添加一個textview(還記得第一節(jié)課的helloworld嗎跋核?),唯一的不同是記得打開圖上紅框的按鈕


image.png

可以在屬性面板給他添加你喜歡顏色以及大小


image.png

顯示文字

打開DisplayMessageActivity文件叛买,添加如下代碼

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_display_message);
    
    // Get the Intent that started this activity and extract the string
    Intent intent = getIntent();
    String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);

    // Capture the layout's TextView and set the string as its text
    TextView textView = findViewById(R.id.textView);
    textView.setText(message);
}

如果代碼正確砂代,應(yīng)該顯示為下圖(有不對的地方請用option+enter自動修復(fù))


image.png

添加導航欄

部分安卓手機是沒有返回按鈕的,所以我們要給他添加一個導航欄

打開app > manifests > AndroidManifest.xml

添加如下代碼

<activity android:name=".DisplayMessageActivity"
          android:parentActivityName=".MainActivity">
    <!-- The meta-data tag is required if you support API level 15 and lower -->
    <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value=".MainActivity" />
</activity>

好了率挣,到這里刻伊,你的第一個有著完整功能的app就建好了,插上你的安卓手機椒功,安裝你親手寫的app試試吧捶箱,他的效果應(yīng)該就像下圖一樣

image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市动漾,隨后出現(xiàn)的幾起案子讼呢,更是在濱河造成了極大的恐慌,老刑警劉巖谦炬,帶你破解...
    沈念sama閱讀 210,978評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件悦屏,死亡現(xiàn)場離奇詭異,居然都是意外死亡键思,警方通過查閱死者的電腦和手機础爬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評論 2 384
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來吼鳞,“玉大人看蚜,你說我怎么就攤上這事∨庾溃” “怎么了供炎?”我有些...
    開封第一講書人閱讀 156,623評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長疾党。 經(jīng)常有香客問我音诫,道長,這世上最難降的妖魔是什么雪位? 我笑而不...
    開封第一講書人閱讀 56,324評論 1 282
  • 正文 為了忘掉前任竭钝,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘香罐。我一直安慰自己卧波,他們只是感情好,可當我...
    茶點故事閱讀 65,390評論 5 384
  • 文/花漫 我一把揭開白布庇茫。 她就那樣靜靜地躺著港粱,像睡著了一般。 火紅的嫁衣襯著肌膚如雪旦签。 梳的紋絲不亂的頭發(fā)上查坪,一...
    開封第一講書人閱讀 49,741評論 1 289
  • 那天,我揣著相機與錄音顷霹,去河邊找鬼咪惠。 笑死击吱,一個胖子當著我的面吹牛淋淀,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播覆醇,決...
    沈念sama閱讀 38,892評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼朵纷,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了永脓?” 一聲冷哼從身側(cè)響起袍辞,我...
    開封第一講書人閱讀 37,655評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎常摧,沒想到半個月后搅吁,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,104評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡落午,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年谎懦,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片溃斋。...
    茶點故事閱讀 38,569評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡界拦,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出梗劫,到底是詐尸還是另有隱情享甸,我是刑警寧澤,帶...
    沈念sama閱讀 34,254評論 4 328
  • 正文 年R本政府宣布梳侨,位于F島的核電站蛉威,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏走哺。R本人自食惡果不足惜瓷翻,卻給世界環(huán)境...
    茶點故事閱讀 39,834評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧齐帚,春花似錦妒牙、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,725評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至剪菱,卻和暖如春摩瞎,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背孝常。 一陣腳步聲響...
    開封第一講書人閱讀 31,950評論 1 264
  • 我被黑心中介騙來泰國打工旗们, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人构灸。 一個月前我還...
    沈念sama閱讀 46,260評論 2 360
  • 正文 我出身青樓上渴,卻偏偏與公主長得像,于是被迫代替她去往敵國和親喜颁。 傳聞我的和親對象是個殘疾皇子稠氮,可洞房花燭夜當晚...
    茶點故事閱讀 43,446評論 2 348

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,734評論 25 707
  • 學習了如何開發(fā)一個非常簡單的安卓工程:Hello World 之后,現(xiàn)在應(yīng)該開始學習最初步的用戶交互界面了 構(gòu)建一...
    奧之閱讀 538評論 1 0
  • ¥開啟¥ 【iAPP實現(xiàn)進入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程半开,因...
    小菜c閱讀 6,365評論 0 17
  • 受不了了隔披。 噓姐看了一集祖國版深夜食堂 按耐不住內(nèi)心的狂喜 來跟大家極力安利這部前所未有的“深夜劇” 先看演員 刀...
    小小噓閱讀 121評論 0 0
  • 29.每日一典: 相濡以沫 [拼音] xiāng rú yǐ mò [解釋] 相:外相;濡:沾濕寂拆;沫:唾沫奢米。濡以沫...
    清馨雨荷閱讀 187評論 2 4