重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
本篇關(guān)鍵點在于 , 如何為按鈕綁定監(jiān)聽事件 。一共有3種方法:
創(chuàng)新互聯(lián)主營寧縣網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶APP軟件開發(fā),寧縣h5微信平臺小程序開發(fā)搭建,寧縣網(wǎng)站營銷推廣歡迎寧縣等地區(qū)企業(yè)咨詢
現(xiàn)設(shè)計UI如下:
一 : 第一種方案(在UI中手動指定Btn的處理函數(shù))
① ,在UI中,選中目標(biāo)button , 修改屬性onClick為onClickOk如下
②,在對應(yīng)界面UI中,定義此函數(shù)
public void onClickOk( View view ){
CharSequence a = MainActivity.this.txt_t.getText();
if( a.toString() == "Hello World!" ){
this.txt_t.setText( "Aonaufly" );
}else{
this.txt_t.setText( "Hello World!" );
}
}
注意函數(shù)必須為public , 返回值必須為void ,參數(shù)必須為View
二 : 第二種方案(內(nèi)部類)
① , 在UI中,選中目標(biāo)button , 修改屬性onClick為空 , 刪除代碼中onClickOk函數(shù)
② ,ui全部代碼如下:
package com.kayer.myfirstdemo;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity {
private TextView txt_t = null;
private Button btn_ok = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.txt_t = (TextView)this.findViewById(R.id.txt_t);
this.btn_ok = (Button)this.findViewById(R.id.btn_ok);
this.btn_ok.setOnClickListener( new onOKBtnClick() );
}
private class onOKBtnClick implements View.OnClickListener{
@Override
public void onClick(View v) {
CharSequence a = MainActivity.this.txt_t.getText();
if( a.toString() == "Hello World!" ){
MainActivity.this.txt_t.setText( "Aonaufly" );
}else{
MainActivity.this.txt_t.setText( "Hello World!" );
}
}
}
}
②-1, 顯然需要手動將按鈕(btn_ok)綁定這個內(nèi)部類(onOKBtnClick)
三 :匿名類,是在第二種方案中進化而來(不用再寫一個內(nèi)部類)
代碼如下:
package com.kayer.myfirstdemo;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity {
private TextView txt_t = null;
private Button btn_ok = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.txt_t = (TextView)this.findViewById(R.id.txt_t);
this.btn_ok = (Button)this.findViewById(R.id.btn_ok);
this.btn_ok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
CharSequence a = MainActivity.this.txt_t.getText();
if( a.toString() == "Hello World!" ){
MainActivity.this.txt_t.setText( "Aonaufly" );
}else{
MainActivity.this.txt_t.setText( "Hello World!" );
}
}
});
}
}