Android独学ノート-5-click事件の4つの書き方
2531 ワード
androidのclickイベントの4つの書き方を簡単に紹介します.使用するプロジェクトは前の文章で修正されました.コードは以下の通りです.
package com.mxy.dail;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends Activity implements OnClickListener {
//
private Button btnDail;
private EditText phoneNumber;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// findViewById
btnDail = (Button) findViewById(R.id.btn_dail);
//
// 1
//btnDail.setOnClickListener(new MyListener());
// 2
/* btnDail.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
callPhone();
}
});*/
// 3 OnClickListener
// , onclick , ,
btnDail.setOnClickListener(this);
// 4 , Activity
// <Button
// android:onClick="btnClick" ---->
// android:id="@+id/btn_dail"
// android:layout_width="wrap_content"
// android:layout_height="wrap_content"
// android:layout_alignLeft="@+id/number"
// android:layout_below="@+id/number"
// android:layout_marginTop="21dp"
// android:text="@string/str_dail" />
//
// public void btnClick(View v){
// callPhone();
// }
phoneNumber = (EditText) findViewById(R.id.number);
}
private void callPhone() {
//
EditText phoneNumber = (EditText) MainActivity.this.findViewById(R.id.number);
String number = phoneNumber.getText().toString();
//
//
Intent intent = new Intent();
//
intent.setAction(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:" + number));
// AndroidManifest.xml android.permission.CALL_PHONE
startActivity(intent);
}
private class MyListener implements OnClickListener{
@Override
public void onClick(View v) {
callPhone();
}
}
@Override
public void onClick(View v) {
callPhone();
}
}