Android開發學習筆記整理(3)

EditText

主要作用:輸入框

常見屬性

  • 同TextView
  • 其他常用屬性:hint、maxLength、inputType

inputType的常見取值

  • text:文本
  • textPassword:文本密碼框
  • numberPassword:數字密碼
  • numberDecimal:帶小數的數字
  • number:整型數字

ImageView

主要作用:用於顯示圖片

常見屬性

  • 同View
  • 其他常用屬性:src、scaleType (拉伸類型)

scaleType的常見取值

  • fitXY:拉伸圖片填充視圖
  • fitStart:保持寬高比,使圖片位於上方或左側
  • fitCenter:保持寬高比,使圖片位於中間
  • fitEnd:保持寬高比,使圖片位於下方或右側
  • center:保持原尺寸,使圖片位於中間
  • centerCrop:拉伸圖片填充視圖,使圖片位於中間
  • fitCenter:保持寬高比,拉伸圖片位於中間
  • centerInside:保持寬高比,縮小圖片位於中間

ImageButton

主要作用:顯示圖片的按鈕

常見屬性

  • 同ImageView

響應事件

  • 獲取按鈕
  • 添加事件
  • 執行業務邏輯

代碼部分:

part1:

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <Button
        android:id="@+id/editViewButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="30dp"
        android:layout_gravity="center_horizontal"
        android:text="EditView"
        android:textSize="30sp"
        android:textAllCaps="false">
    </Button>

    <Button
        android:id="@+id/imageViewButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="30dp"
        android:layout_gravity="center_horizontal"
        android:text="ImageView"
        android:textSize="30sp"
        android:textAllCaps="false">
    </Button>

    <Button
        android:id="@+id/imageButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="30dp"
        android:layout_gravity="center_horizontal"
        android:text="ImageButton"
        android:textSize="30sp"
        android:textAllCaps="false">
    </Button>

</LinearLayout>

效果圖:

在這裏插入圖片描述

activity_edit_text.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="演示EditText"
        android:textSize="30dp"
        android:gravity="center"
        android:textColor="#000000">
    </TextView>

    <!--
        text和hint的區別:hint是提示語,text是輸入框的內容
    -->
    <EditText
        android:id="@+id/editText1"
        android:layout_margin="15dp"
        android:layout_height="50dp"
        android:layout_width="match_parent"
        android:hint="請輸入用戶名"
        android:maxLength="20"
        android:inputType="text">
    </EditText>

    <EditText
        android:id="@+id/editText2"
        android:layout_margin="15dp"
        android:layout_height="50dp"
        android:layout_width="match_parent"
        android:hint="請輸入密碼"
        android:maxLength="20"
        android:inputType="textPassword">
    </EditText>

    <EditText
        android:id="@+id/editText3"
        android:layout_margin="15dp"
        android:layout_height="50dp"
        android:layout_width="match_parent"
        android:hint="請輸入數字密碼"
        android:maxLength="6"
        android:inputType="numberPassword">
    </EditText>

    <EditText
        android:id="@+id/editText4"
        android:layout_margin="15dp"
        android:layout_height="50dp"
        android:layout_width="match_parent"
        android:hint="請輸入整數"
        android:maxLength="6"
        android:inputType="number">
    </EditText>

    <EditText
        android:id="@+id/editText5"
        android:layout_margin="15dp"
        android:layout_height="50dp"
        android:layout_width="match_parent"
        android:hint="請輸入小數"
        android:maxLength="6"
        android:inputType="numberDecimal">
    </EditText>

    <Button
        android:id="@+id/inputButton"
        android:layout_margin="20dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="獲取輸入框的內容">
    </Button>

</LinearLayout>

效果圖:

在這裏插入圖片描述

activity_image_view.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="ImageView演示"
        android:textSize="30sp"
        android:textColor="#000000"
        android:gravity="center_horizontal"
        android:background="#8BC34A">
    </TextView>


    <!--
        scaleType:
            fit:
                fitXY:拉伸圖片填充視圖,可能會失真
                fitStart:寬高等比例拉伸,並放在視圖左側
                fitCenter:寬高等比例拉伸,並放在視圖中間
                fitEnd:寬高等比例拉伸,並放在視圖右側
            center:
                center:保持原尺寸,放到視圖中間
                centerCrop:填滿整個屏幕,並放到中間,可能會失真
                fitCenter:等比例拉伸,放到視圖中間
                centerInside:
                    當圖片比較小時的時候,不做處理,放到視圖中間,相當於center;
                    當圖片比較大時的時候,做等比例縮小處理,然後放到視圖中間
    -->
    <!-- 注:圖片名稱不能爲數字且單詞首字母不能爲大寫,.png結尾 -->
    <ImageView
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:src="@drawable/icon2"
        android:scaleType="centerInside"
        android:background="#AF1B1B">
    </ImageView>
    
</LinearLayout>

效果圖:

在這裏插入圖片描述

icon2.png

在這裏插入圖片描述

activity_image_button.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="match_parent"
    android:layout_width="match_parent"
    android:orientation="vertical">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:text="ImageButton"
        android:textSize="30dp"
        android:textColor="#000000"
        android:gravity="center">
    </TextView>

    <ImageButton
        android:id="@+id/imageButtonDemo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/icon">
    </ImageButton>

</LinearLayout>

效果圖:

在這裏插入圖片描述

icon.png

在這裏插入圖片描述

part2:

MainActivity.java

import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends AppCompatActivity {

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

        //點擊跳轉editView演示界面
        findViewById(R.id.editViewButton).setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this, EditTextActivity.class);
                startActivity(intent);
            }

        });

        //點擊跳轉ImageView演示界面
        findViewById(R.id.imageViewButton).setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this, ImageViewActivity.class);
                startActivity(intent);
            }

        });

        //點擊跳轉ImageButton演示界面
        findViewById(R.id.imageButton).setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this, ImageButtonActivity.class);
                startActivity(intent);
            }

        });
    }

}

EditTextActivity.java

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
public class EditTextActivity extends AppCompatActivity {

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

        findViewById(R.id.inputButton).setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                //獲取輸入框的值並輸出
                EditText editText1 = findViewById(R.id.editText1);
                System.out.println("editText1的值是:" + editText1.getText());

                EditText editText2 = findViewById(R.id.editText2);
                System.out.println("editText2的值是:" + editText2.getText());

                EditText editText3 = findViewById(R.id.editText3);
                System.out.println("editText3的值是:" + editText3.getText());

                EditText editText4 = findViewById(R.id.editText4);
                System.out.println("editText4的值是:" + editText4.getText());

                EditText editText5 = findViewById(R.id.editText5);
                System.out.println("editText5的值是:" + editText5.getText());
            }

        });
    }

}

效果圖:

在這裏插入圖片描述
在這裏插入圖片描述

ImageViewActivity.java

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
public class ImageViewActivity extends AppCompatActivity {

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

ImageButtonActivity.java

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
public class ImageButtonActivity extends AppCompatActivity {

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

        //給ImageButton綁定事件
        findViewById(R.id.imageButtonDemo).setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                System.out.println("圖片按鈕被點擊了...");
            }

        });

    }

}

效果圖:

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章