十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
本篇關(guān)鍵點在于 , 如何為按鈕綁定監(jiān)聽事件 。一共有3種方法:
現(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!" );
}
}
});
}
}
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。