该按钮在xml中已有方法:
android:onClick="playSound"
我在活动中创建了方法:
public void playSound (View view){ //code1 }
我想按下按钮将onClick
更改为活动中的现有方法
public void pauseSound(View view){ //code2 }
当我再次按下按钮时,我希望onClick
返回原始方法,
public void playSound (View view){ //code1 }
提示:我在同一方法playSound
答案 0 :(得分:3)
定义变量(int
/ bool
),将其用作标志并在需要时调用方法。
bool flag = 0;
public void playSoundHandler (View view){
if (flag) playSound(view);
else pauseSound(view);
}
playSound (View view) {
// Your code
flag = 1;
}
pauseSound (View view) {
// Your code
flag = 0;
}
并设置onClick="playSoundHandler"
。
修改
如果您无法修改playSound
方法,因为多个按钮使用它,您可以执行以下操作:
bool flag = 0;
public void playSoundHandler (View view){
if (!flag) {
playSound(view);
flag = 1;
} else {
pauseSound(view);
flag = 0;
}
}
playSound (View view) {
// Your code
}
pauseSound (View view) {
// Your code
}
并为该特定按钮设置onClick="playSoundHandler"
。