編輯:關於Android編程
如題,在Android中按鈕的點擊事件有四種寫法,如下圖。
界面為四個Button+一個TextView+一個ImageView

activity_main布局文件如下:
主界面實現的代碼如下:
package clickevent.ithema.com.clickevent;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
public class MainActivity extends Activity implements View.OnClickListener {
private TextView tv_text;
private Button btn_click1,btn_click2,btn_click3;
private ImageView iv_yc;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv_text = (TextView) findViewById(R.id.tv_text);
iv_yc= (ImageView) findViewById(R.id.iv_yc);
btn_click1 = (Button) findViewById(R.id.btn_click1);
btn_click2 = (Button) findViewById(R.id.btn_click2);
btn_click3 = (Button) findViewById(R.id.btn_click3);
btn_click2.setOnClickListener(this);//這是實現接口點擊的方法
btn_click3.setOnClickListener(new MyListener());//這是自定義類實現接口點擊的方法
btn_click1.setOnClickListener(new View.OnClickListener() {//實現匿名內部類點擊的方法
@Override
public void onClick(View v) {
tv_text.setText("這是匿名內部類點擊的方法,適用於只用一次點擊方法");
iv_yc.setImageResource(R.drawable.click1);
}
});
}
@Override
public void onClick(View v) {
tv_text.setText("這是實現接口點擊的方法");
iv_yc.setImageResource(R.drawable.click2);
}
class MyListener implements View.OnClickListener {
@Override
public void onClick(View v) {
tv_text.setText("這是自定義類實現接口點擊的方法");
iv_yc.setImageResource(R.drawable.click3);
}
}
public void click4(View v){
tv_text.setText("這是在xml文件中定義屬性的方法");
iv_yc.setImageResource(R.drawable.click4);
}
}
方法一:匿名內部類方法
package clickevent.ithema.com.clickevent;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
/**
* Created by Administrator on 2016/7/16.
*/
public class Click1 extends Activity{
private TextView tv_text;//文本框
private ImageView iv_yc;//圖片框
private Button btn_click1;//按鈕
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv_text= (TextView) findViewById(R.id.tv_text);//查找到文本框的ID
iv_yc= (ImageView) findViewById(R.id.iv_yc);//查找到圖片框的ID
btn_click1= (Button) findViewById(R.id.btn_click1);//查找到按鈕的ID
btn_click1.setOnClickListener(new View.OnClickListener() { //給按鈕設置監聽
@Override//按鈕點擊解發的方法
public void onClick(View v) {
//設置要顯示的文字
tv_text.setText("這是匿名內部類點擊的方法,適用於只用一次點擊方法");
//設置要顯示的圖片
iv_yc.setImageResource(R.drawable.click1);
}
});
}
}
方法二:實現接口
package clickevent.ithema.com.clickevent;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
/**
* Created by Administrator on 2016/7/16.
*/
public class Click2 extends Activity implements View.OnClickListener {//實現監聽接口
private TextView tv_text;//文本框
private ImageView iv_yc;//圖片框
private Button btn_click2;//按鈕
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv_text= (TextView) findViewById(R.id.tv_text);//查找到文本框的ID
iv_yc= (ImageView) findViewById(R.id.iv_yc);//查找到圖片框的ID
btn_click2= (Button) findViewById(R.id.btn_click2); //查找到按鈕的ID
btn_click2.setOnClickListener(this);//給按鈕設置監聽
}
@Override//按鈕點擊解發的方法
public void onClick(View v) {
//設置要顯示的文字
tv_text.setText("這是實現接口點擊的方法");
//設置要顯示的圖片
iv_yc.setImageResource(R.drawable.click2);
}
}
方法三:自定義類實現接口
package clickevent.ithema.com.clickevent;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
/**
* Created by Administrator on 2016/7/16.
*/
public class Click3 extends Activity {
private TextView tv_text;//文本框
private ImageView iv_yc;//圖片框
private Button btn_click3;//按鈕
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv_text = (TextView) findViewById(R.id.tv_text);//查找到文本框的ID
iv_yc= (ImageView) findViewById(R.id.iv_yc);//查找到圖片框的ID
btn_click3 = (Button) findViewById(R.id.btn_click3);//查找到按鈕的ID
btn_click3.setOnClickListener(new MyListener());//給按鈕設置監聽
}
class MyListener implements View.OnClickListener {//自定義MyListener類實現OnClickListener接口
@Override
public void onClick(View v) {
//設置要顯示的文字
tv_text.setText("這是自定義類實現接口點擊的方法");
//設置要顯示的圖片
iv_yc.setImageResource(R.drawable.click3);
}
}
}
方法四:在xml文件中定義onClick屬性
2、在java代碼中寫點擊的方法:
package clickevent.ithema.com.clickevent;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
/**
* Created by Administrator on 2016/7/16.
*/
public class Click4 extends Activity {
private TextView tv_text;//文本框
private ImageView iv_yc;//圖片框
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv_text = (TextView) findViewById(R.id.tv_text);//查找到文本框的ID
iv_yc= (ImageView) findViewById(R.id.iv_yc);//查找到圖片框的ID
}
public void click4(View v){
//設置要顯示的文字
tv_text.setText("這是在xml文件中定義屬性的方法");
//設置要顯示的圖片
iv_yc.setImageResource(R.drawable.click4);
}
}
Android進階——Crash異常捕獲並發送到服務器
本篇文章包含以下內容: Crash異常捕獲的簡單使用 Crash異常捕獲並發送到服務器在項目中,我們常常會遇到Crash的現象,也就是程序崩潰的時候,這個時候最常看到的
安卓自定義View進階 - Path
一.Path常用方法表 為了兼容性(偷懶) 本表格中去除了在API21(即安卓版本5.0)以上才添加的方法。忍不住吐槽一下,為啥看起來有些順手就能寫的重載方法
Android:ImageView
ImageViewImageView,圖像視圖,直接繼承自View類,它的主要功能是用於顯示圖片,實際上它不僅僅可以用來顯示圖片,任何Drawable對象都可以使用Ima
Android 文件選擇器詳解及實例代碼
本文給大家講解下Android文件選擇器的使用。實際上就是獲取用戶在SD卡中選擇的文件或文件夾的路徑,這很像C#中的Op