android控件02---Button

Button是程序與用戶進行交互的一個重要的控件,它可配置的屬性與Textview是差不多的。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

<Button       
        android:id="@+id/button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Button"
        android:textAllCaps="true"/>    //禁止大寫轉換    如果不寫這行代碼    設置的內容在顯示的時候會自動轉換爲大寫

</LinearLayout>

既然Button是一個交互控件。用戶點擊是肯定的。下面,我們就來看一看怎麼實現對按鈕點擊事件的監聽。

方法一:實現接口來進行註冊

public class MainActivity extends AppCompatActivity implements View.OnClickListener{
    private Button buttonOne;
    private Button buttonTWo;
   
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        buttonOne = (Button)findViewById(R.id.buttonOne);
        buttonTwo = (Button)findViewById(R.id.buttonTwo);
        buttonOne.setOnClickListener(this);
        buttonTWo.setOnClickListener(this);
    }
    public void onClick(View v){
        switch (v.getId()){
            case R.id.buttonOne:
               //在此處添加邏輯語句
                break;
            case R.id.buttonTwo:
                //在此處添加邏輯語句
                break;
            default:
                break;
        }
    }
}

方法二:用匿名類來註冊監聽器

public class MainActivity extends AppCompatActivity {
    private Button buttonOne;
    private Button buttonTWo;
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        buttonOne = (Button)findViewById(R.id.buttonOne);
        buttonTWo = (Button)findViewById(R.id.buttonTwo);
        buttonOne.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                //在此處添加邏輯語句
            }
        });
        buttonTWo.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                //在此處添加邏輯語句
            }
        });
    }
}

至於使用哪一種完全憑個人喜好了。至於運行圖就不貼了。


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