android:Button控制元件

yufan發表於2016-01-08

Button 是程式用於和使用者進行互動的一個重要控制元件,相信你對這個控制元件已經是非常熟悉 了,因為我們在上一章用了太多次 Button。它可配置的屬性和 TextView 是差不多的,我們 可以在 activity_main.xml 中這樣加入 Button:

 

<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/button" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Button" />

</LinearLayout>

加入 Button 之後的介面如圖 3.4 所示。

 

 

 

圖   3.4

 

 

 

然後我們可以在 MainActivity 中為 Button 的點選事件註冊一個監聽器,如下所示:

 

public class MainActivity extends Activity {

private Button button;

@Override

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

button = (Button) findViewById(R.id.button);

button.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

// 在此處新增邏輯

}

});

}

 

}

這樣每當點選按鈕時,就會執行監聽器中的 onClick()方法,我們只需要在這個方法中加 入待處理的邏輯就行了。如果你不喜歡使用匿名類的方式來註冊監聽器,也可以使用實現接 口的方式來進行註冊,程式碼如下所示:

 

public class MainActivity extends Activity implements OnClickListener {

 

 

private Button button;

 

 

@Override

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

button = (Button) findViewById(R.id.button);

button.setOnClickListener(this);

}

 

 

@Override

public void onClick(View v) {

switch (v.getId()) {

case R.id.button:

 

 

 

// 在此處新增邏輯

break;

default:

break;

}

}

 

}

這兩種寫法都可以實現對按鈕點選事件的監聽,至於使用哪一種就全憑你喜好了。

相關文章