我建立我在其中執行活動的超類型方法的Android應用程序稱爲onCheckedChanged(CompoundButton buttonView, boolean isChecked)
如下:如何在Android/Java中以不同的方式傳遞參數?
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked){
LinearLayout view = (LinearLayout) findViewById(R.id.some_view);
Animation anim = expand(view, true);
view.startAnimation(anim);
}
else {
LinearLayout view = (LinearLayout) findViewById(R.id.some_view);
Animation anim = expand(view, false);
view.startAnimation(anim);
}
}
而且這種方法會被設置爲監聽在這樣的onCreate方法交換機:
mySwitch = (Switch) findViewById(R.id.my_switch);
mySwitch.setOnCheckedChangeListener(this);
現在的事情是我想實現這個方法不僅爲some_view
,但也爲其他一些意見。因爲我不想複製/粘貼這個方法幾次,只是改變some_view我需要一些傳遞視圖的方式。由於我重寫了這個方法,但是我不能簡單地爲該方法添加一個參數。因爲我爲這個方法設置了一個監聽器,所以在這個方法被調用之前,我也不能將這個id設置爲一個全局變量。
所以我的問題是:我怎麼能傳遞一個ID,以這種方法,這樣我就不需要複製/粘貼方法重用了好意見?