# Android Studio (Java) ## 用法 ### TextView用法 TextView就類似Windows Form的label 假設我現在有一個TextView的ID叫做txt 先定義一個變數拿來存這個東西: ``` java TextView txt = (TextView) findViewById(R.id.txt); //利用findViewById來找到這個txt ``` 現在我要拿到這個label內的字並存到字串a內: ``` java String a=txt.getText().toString(); ``` 若要設定txt的字為"hello world的話: ``` java txt.setText("hello world"); ``` ### EditText用法 EditText就類似Windows Form的text box(也就是輸入框) 假設我現在有一個EditText的ID叫做txt 先定義一個變數拿來存這個東西: ``` java EditText txt = (EditText) findViewById(R.id.txt); //利用findViewById來找到這個txt ``` 現在我要拿到這個label內的字並存到字串a內: ``` java String a=txt.getText().toString(); ``` ### Button用法 假設我現在有一個Button的ID叫做btn 先定義一個變數拿來存這個東西: ``` java Button btn = findViewById(R.id.btn); //利用findViewById來找到這個btn ``` 現在就要來新增監聽式(類似Window Form的事件): ``` java btn.setOnClickListener(click); ``` 現在要來定義監聽式:   (實際寫法在下面的實作) ```Java private Button.OnClickListener click = new View.OnClickListener() { @Override public void onClick(View v) { //TODO程式碼寫在裡面 } } ``` ## 實作 ### 畫面如下: ![](https://i.imgur.com/VRqoL5D.png) ### 功能: 若我按下設定按鈕,上發輸入框的文字將會出現在下面 ### 定義: edtxt(最上方的輸入框) btn(中間的按鈕) txt(下方的文字) ## 成果: ![](https://i.imgur.com/Jar8AfV.png) ## 程式碼: ``` Java //以下式自動生成的,不用理他 package com.extra.myapplication; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; public class MainActivity extends AppCompatActivity { @Override // onCreate就是剛開始就會跑的地方(類似Form Load) protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //定義按鈕 Button btn=findViewById(R.id.btn); //定義按鈕的監聽式 btn.setOnClickListener(click); } //輸入View.OnClickListener click=new On...就會自動跑出來 View.OnClickListener click=new View.OnClickListener() { @Override public void onClick(View v) { //定義TextView TextView txt=findViewById(R.id.txt); //定義輸入框(EditText) EditText editText=findViewById(R.id.edtxt); //設定TextView的文字為輸入框的文字 txt.setText(editText.getText().toString()); } }; } ```