我有一个称为控制器的布局,其中有几个按钮,问题出在我的 onTouch 功能中,我想一键显示它并隐藏它。现在这在 2 次触摸后起作用。第一次触摸应该显示控制器,而下一次应该使它消失。第一次和第二次触摸什么都不做,但在第三次触摸时它起作用。这是相关的功能
public boolean onTouchEvent(MotionEvent event)
{
int eventx = event.getAction();
switch(eventx)
{
case MotionEvent.ACTION_DOWN:
if(isLifted)
{
if(!isVisible)
{
Log.i("onTouch", "called showPuse menu");
isVisible = true;
isPaused = true;
showPauseMenu();
}
else if(isVisible)
{
hidePauseMenu();
isVisible= false;
}
isLifted = false;
}
break;
case MotionEvent.ACTION_UP:
if(!isLifted)
{
isLifted = true;
//Log.i("onTouchEvent", "Lifted");
}
}
return false;
}
/***************************************************
* Shows All Views needed to be shown
* Also pauses video and audio
*
* *************************************************/
private void showPauseMenu()
{
Log.i("showPauseMenu", "called");
playButton.setVisibility(View.VISIBLE);
Log.i("showPauseMenu", "plaButton visible");
bottomButtons.setVisibility(View.VISIBLE);
Log.i("showPauseMenu", "bottom Menu showed");
playButton.invalidate();
bottomButtons.invalidate();
pauseMedia();
}
/************************************************
* Hides Views that are part of Pause Menu
* Also starts video and audio back again
*/
private void hidePauseMenu() {
playButton.setVisibility(View.GONE);
bottomButtons.setVisibility(View.GONE);
playMedia();
}
谁能说可能是什么问题?我已经看这段代码几天了,看不出它可能是什么。