iT邦幫忙

2022 iThome 鐵人賽

DAY 8
0
Mobile Development

Android studio 30天初學筆記系列 第 8

[Android Studio 30天挑戰] Day08 - 介紹Button和Toast

  • 分享至 

  • xImage
  •  

今天要介紹的是Button這是一個非常非常實用的元件,不管事什麼專案都一定會用到。/images/emoticon/emoticon12.gif
而Button有很多的種類,但使用方法都大同小異,所以今天除了介紹Button的用法還會講解一下Toast的用法,最後再做一個小應用。

Button用法

xml綁定函數

先在主程式建立一個點擊的函數。

public void buttonOnClick(View view){
//點擊時的動作
}

之後再到Layout的xml進行綁定。

https://ithelp.ithome.com.tw/upload/images/20220713/20150369ks7WFpWiFQ.png

按鈕監聽

直接在主程式裡進行使用。

Button button = findById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        //點擊時的動作
    }
});

引用

直接在主程式裡進行使用,這剛方法的可讀性比較高,也比較精簡。

button=(Button) findViewById(R.id.button);
button.setOnClickListener(this::onClick);
​
private void onClick(View v){
    //點擊時的動作
    }

Toast

Toast是一個快顯的元件,可以產生各種不同的訊息。

語法

Toast.makeText(Context context, CharSequence text, int duration).show();
  • text:你想要顯示的文字。
  • duration:你要顯示多久(Toast.LENGTH_SHORT持續2秒,Toast.LENGTH_LONG 持續3.5秒)。
  • show():將其顯示。

顯示位置

另外Toast的預設位置是在中下的地方,但有方法可以做更改,就是呼叫setGravity這個內建函數。

public void setGravity (int gravity, int x, int y)
  • gravity:為Toast的位置。
  • x:x軸偏移量。
  • y:y軸偏移量。

應用

流程

  1. 綁定元件。
  2. 按下按鈕觸發。
  3. 拿取Edit Text裡的值。
  4. 顯示Toast。

程式碼

public class MainActivity extends AppCompatActivity {
    //宣告變數。
    private EditText name;
    private Button button;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //綁定元件。
        button=(Button) findViewById(R.id.button);
        name=(EditText) findViewById(R.id.editTextTextPersonName);
    }
    //按鈕觸發函數
    public void buttonClick(View view){
        //建立toast並拿取Edit Text的值。
        Toast toast=Toast.makeText(this, "我叫"+name.getText(),Toast.LENGTH_SHORT);
        //更改toast的顯示位置。
        toast.setGravity(Gravity.CENTER,0,-200);
        //顯示toast。
        toast.show();
    }
}

https://ithelp.ithome.com.tw/upload/images/20220713/20150369bnWbxmkeuX.png


上一篇
[Android Studio 30天挑戰] Day07 - 介紹Text元件
下一篇
[Android Studio 30天挑戰] Day09 - 介紹ViewPager2
系列文
Android studio 30天初學筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言