今天學習的是
ImageView 和 ImageButton
這兩個控件還是比較簡單的:先來看看最后的樣式圖片吧:
從圖片中可以看到ImageView中的圖片要大很多,這是因為中的ImageView中的圖片跟ImageView控件的大小而自動調整。
ImageButton中的圖片卻小很多,因為這里面的圖片沒有跟隨父容器的大小而做出調整,只是展示最原始的大小。
這兩個控件中還有兩個屬性要理解了:
第一個就是?android:src="@mipmap/wether"? ?這其中的src 是前景的意思? ?@的意思是:在...里面? 整句代碼的意思就是? ? 前景是在mipmap文件夾中的wether文件? 這樣就顯示了wenther這個圖片
這個圖片縮放的位置是:
我的Android Studio安裝在了E盤的Android文件夾里面了,所以我的圖片資源都放在這個目錄下:
E:\Android\release\code\app\src\main\res\mipmap-hdpi
好了今天的布局代碼是:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/main"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".ButtonActivity"android:orientation="vertical"android:gravity="center_horizontal"><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:layout_margin="10sp"android:text="按鈕1"android:id="@+id/btn1"android:textSize="36sp"android:textColor="#FF0000"android:onClick="myclick"/><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:layout_margin="10sp"android:text="按鈕2"android:id="@+id/btn2"android:textSize="36sp"android:textColor="#FF0000"android:onClick="myclick"/><Buttonandroid:layout_width="match_parent"android:layout_height="wrap_content"android:layout_margin="10sp"android:text="按鈕3"android:id="@+id/btn3"android:textSize="36sp"android:textColor="#FF0000"android:onClick="myclick"/><TextViewandroid:id="@+id/text1"android:layout_width="match_parent"android:layout_height="wrap_content"android:textSize="36sp"android:textColor="#FF0000"android:layout_margin="30sp"android:background="#00FFFF"/><ImageViewandroid:layout_width="200dp"android:layout_height="120dp"android:src="@mipmap/wether"android:tooltipText="天氣圖片"android:background="#00F0FF"/><ImageButtonandroid:layout_width="200dp"android:layout_height="120dp"android:src="@mipmap/wether"android:background="#ff00ff"/></LinearLayout>
今天的ButtonActivity的文件內容是:
package com.example.android1;import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TextView;import androidx.activity.EdgeToEdge;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;public class ButtonActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);EdgeToEdge.enable(this);setContentView(R.layout.activity_button);ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> {Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);return insets;});}public void myclick(View a){int id = a.getId();TextView text = findViewById(R.id.text1);if(id == R.id.btn1){Log.e("tag","按鈕1被點擊了");text.setText("按鈕1被點擊了");}else if(id == R.id.btn2){Log.e("tag","按鈕2被點擊了");text.setText("按鈕2被點擊了");}else if(id == R.id.btn3){Log.e("tag","按鈕3被點擊了");text.setText("按鈕3被點擊了");}}
}