在你的情況據我所知的一切,如添加聽者&處理點擊的代碼是必需的,我們需要做的clicklistner,在這種情況下,沒有需要最小化 根據我的意見,在您的代碼優化是可能的,只有在情況下,如果你不使用按鈕實例任何地方給予直接點擊事件查看實例爲setOnClickListner是查看方法
以下三種不同的方式可以給你,你可以使用哪一種你發現最小化/優化。
// if button or textview instance is not required any where outside than
// Button ArsalButton = (Button)findViewById(R.id.ArsalButton);
//final TextView ArsalText = (TextView)findViewById(R.id.ArsalText);
findViewById(R.id.ArsalButton).setOnClickListener(
new Button.OnClickListener() {
public void onClick(View v) {
((TextView) findViewById(R.id.ArsalText)).ArsalText.setText("You Done it!");
}
}
);
第二種方式是像實現onlclick聽者接口&手柄單擊
public class YourActivity extends Activity implements Button.OnClickListener {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.ArsalButton).setOnClickListener(this);
// if button or textview instance is not required any where outside than
// Button ArsalButton = (Button)findViewById(R.id.ArsalButton);
//final TextView ArsalText = (TextView)findViewById(R.id.ArsalText);
findViewById(R.id.ArsalButton).setOnClickListener(
new Button.OnClickListener() {
public void onClick(View v) {
}
}
);
}
@Override
public void onClick(View v) {
((TextView) findViewById(R.id.ArsalText)).ArsalText.setText("You Done it!");
}
}
另一種方式是像XML按鈕給予click事件
public class YourActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void onArsalButtonClick(View view) {
((TextView) findViewById(R.id.ArsalText)).ArsalText.setText("You Done it!");
}
}
<Button
android:id="@+id/ArsalButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onArsalButtonClick"
android:text="ArsalButton" />
無需將其最小化 – jhamon
在您的活動或片段中使用實現OnClickListener – Brendon
在活動佈局的android:onClick屬性中定義方法 – Nambi