Как создать кнопку, которая не реагирует на мультитач в Unity для iOS? - PullRequest
0 голосов
/ 30 августа 2018

У меня есть проблема. Я создаю игру для iOS в Unity, и у меня есть стандартная кнопка пользовательского интерфейса, которую игрок должен нажимать как можно быстрее. Хотя, когда игрок нажимает на кнопку двумя пальцами одновременно, он регистрируется как два касания ... 3 касания с 3 пальцами и так далее. Как получить кнопку, чтобы зарегистрировать только одно касание, даже если игрок одновременно нажимает тремя пальцами?

Ответы [ 2 ]

0 голосов
/ 01 сентября 2018

Вы можете использовать переменную, чтобы избежать нескольких касаний, если вы не используете фазу касания

если проверка mousedown:

    if(Input.GetMouseButtonDown(0)&& !pressed){
       pressed =true
       //Do if pressed
    } 
    if(Input.GetMouseButtonUp(0)){
        pressed =false
    }

При проверке фаз касания

     if (Input.GetTouch(0).phase == TouchPhase.Began){//This will only call your 1st touch when it begins 
     //Do Your thing 
     }

ЕСЛИ использует onMouseDown

  onMouseDown(){
    if(pressed){return;}
    pressed=true;
  }
  onMouseUp(){
  pressed =false;
  }
0 голосов
/ 30 августа 2018

Хитрость, которую я делаю, заключается в том, чтобы создать прозрачный объект изображения и поместить его под пользовательским интерфейсом кнопок, а затем прикрепить сценарий жестов к этому изображению, надеясь, что это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...