20175234 2018-2019-2 實驗四 Android程序設計

20175234 2018-2019-2 實驗四 Android程序設計

任務一

  • 參考http://www.cnblogs.com/rocedu/p/6371315.html#SECANDROID,安裝 Android Stuidio

  • 完成Hello World, 要求修改res目錄中的內容,Hello World後要顯示本身的學號,本身學號先後一名同窗的學號

  • 學習Android Stuidio調試應用程序
    相似於IDEA調試,在程序中設置斷點,而後debug run,程序就會運行在斷點位置處中止

在下方debug窗口能夠看到詳細的參數信息
java

點開Run能夠看到相似於IDEA的調試方法和快捷鍵
android

嘗試Step Over
git

任務二

  • 建立 ThirdActivity, 在ThirdActivity中顯示本身的學號,修改代碼讓MainActivity啓動ThirdActivity

任務三

實驗要求:

參考《Java和Android開發學習指南(第二版)(EPUBIT,Java for Android 2nd)》第二十六章: - 構建項目,運行教材相關代碼app

  • 修改代碼讓Toast消息中顯示本身的學號信息
  • 提交代碼運行截圖和碼雲Git連接,截圖要有學號水印,不然會扣分

實驗過程:

  • 嘗試使用UI佈局,能夠看到,添加微件後,佈局文件會以XML元素體現出來。

  • 修改代碼讓Toast消息中顯示本身的學號信息
    在activity_main.xml中添加Button
<Button
        android:id="@+id/btnSimpleToast"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:text="hey!20175234"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"/>

修改MainActivity.java代碼,以下less

package com.example.basiccomponents;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;


public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button btnshow1 = (Button) findViewById(R.id.btnSimpleToast);
        btnshow1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast toast = Toast.makeText(MainActivity.this, "20175234 趙詩玥", Toast.LENGTH_LONG);
                toast.show();

            }
        });
    }
}

運行結果截圖以下ide

任務四

佈局測試: 參考《Java和Android開發學習指南(第二版)(EPUBIT,Java for Android 2nd)》第二十七章: - 構建項目,運行教材相關代碼佈局

  • 修改佈局讓P290頁的界面與教材不一樣

任務五

  • 參考《Java和Android開發學習指南(第二版)(EPUBIT,Java for Android 2nd)》第二十八章:
  • 構建項目,運行教材相關代碼

activity_main.xml學習

<?xml version="1.0" encoding="utf-8"?>

<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"
    tools:context=".MainActivity">
    <AnalogClock
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="90dp"
        android:id="@+id/analogClock1"
        android:onClick="changeColor" />
    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="20175217wyf"
        android:layout_marginLeft="70dp"
        android:layout_marginTop="300dp"
        android:textSize="38dp"
        android:textColor="#bbbb00"/>
</RelativeLayout>

MainActivity測試

package com.example.myapplication;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.AnalogClock;
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.AnalogClock;
public class MainActivity extends Activity {
    int counter = 0;
    int[] colors = { Color.BLACK, Color.BLUE, Color.CYAN,
            Color.DKGRAY, Color.GRAY, Color.GREEN, Color.LTGRAY,
            Color.MAGENTA, Color.RED, Color.WHITE, Color.YELLOW };
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    public void changeColor(View view) {
        if (counter == colors.length) {
            counter = 0;
        }
        view.setBackgroundColor(colors[counter++]);
    }
}

問題及解決措施

  • 在修改代碼後出現以下問題

根據提示信息 This view is not constrained, it only has designtime positions, so it will jump to (0,0) unless you add constraints(譯:這個視圖不受約束,它只有設計時位置,因此它會跳轉到(0,0),除非你添加約束)咱們能夠得知這是在提示咱們爲該控件添加約束。
解決措施以下:

碼雲連接

參考資料

相關文章
相關標籤/搜索