Как сделать скрытый макет видимым с помощью нажатия кнопки? - PullRequest
2 голосов
/ 18 ноября 2011

Здесь, в этом коде, я попробовал какое-то событие с сенсорным экраном

    @Override
public boolean onTouchEvent(MotionEvent touchevent) {

    switch (touchevent.getAction())
    {
        case MotionEvent.ACTION_DOWN:
        {
            oldTouchValue = touchevent.getX();
            break;
        }
        case MotionEvent.ACTION_UP:
        {
            float currentX = touchevent.getX();
            if (oldTouchValue < currentX  && panel.getVisibility() == View.VISIBLE)
            {                   
                panel.clearAnimation();
                panel.startAnimation(mAnimHide);
                panel.setVisibility(View.INVISIBLE);

            }
            if (oldTouchValue > currentX  && panel.getVisibility() == View.INVISIBLE)
            {
                panel.setVisibility(View.VISIBLE);
                panel.startAnimation(mAnimShow);
            }
        break;
        }
    }


    return false;
}

//, когда я попробовал нижеприведенное, оно не работает

public void onClick(View v) {
    switch(v.getId())
    {
    case R.id.onClick:
    }
    if(panel.getVisibility()==View.INVISIBLE)
    {
        panel.setVisibility(View.VISIBLE);
        panel.startAnimation(mAnimShow);
    }
}

Когда я пытался сделатьСкрытая раскладка, видимая при нажатии кнопки Программа не отвечает.Я достаточно старался.

Может кто-нибудь помочь мне?Как мы должны заставить действие события работать?

Ответы [ 3 ]

1 голос
/ 18 ноября 2011

Попробуйте использовать фактическое значение int идентификатора, а не R.id.onClick. Так, если вы дали кнопке идентификатор 30, например, используйте case 30: ...

0 голосов
/ 04 марта 2014
case R.id.title_call_button:
if(llButtonCallNow.getVisibility() != View.VISIBLE){
llButtonCallNow.setVisibility(View.VISIBLE);
}
    else{
    llButtonCallNow.setVisibility(View.GONE);
    }
break;
0 голосов
/ 18 ноября 2011

вместо View.INVISIBLE используйте класс панели.например, если панель является экземпляром TextView:

if(panel.getVisibility()==TextView.INVISIBLE)
    {
        panel.setVisibility(TextView.VISIBLE);
        panel.startAnimation(mAnimShow);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...