Разница между OnTouch и OnClick Android



есть ли разница между OnTouchListener и OnClickListener? Я спрашиваю не с точки зрения программирования, а с точки зрения пользовательского опыта.



какой из них лучше использовать?



нужно ли нам реализовать оба?

350   6  

6 ответов:

какой из них лучше использовать?

Это действительно зависит от ваших требований. onTouch дает вам событие движения. Таким образом, вы можете сделать много интересного, как это поможет вам отдельное состояние движения. Просто чтобы назвать несколько

  • выполняется
  • ACTION_DOWN
  • ACTION_MOVE

Это общие действия, которые мы обычно реализуем, чтобы получить желаемый результат, такой как перетаскивание вида на экране.

С другой стороны рука, onClick не дает вам много, за исключением того, какой вид взаимодействует с пользователем. onClick-это полное событие,состоящее из фокусировки, нажатия и отпускания. Итак, у вас мало контроля над ним. Одна сторона вверх - это очень просто реализовать.

нужно ли нам реализовать оба?

это не обязательно, если вы не хотите, чтобы испортить с вашим пользователем. Если вы просто хотите простое событие щелчка, перейдите к onClick. Если вы хотите больше, чем нажмите, перейдите на onTouch. Делать оба усложнить процесс.

С точки зрения пользователя, это незаметно, если вы реализуете onTouch тщательно, чтобы выглядеть как onClick.

событие "Touch" - Это когда кто-то кладет палец на экран. Он вызывается во время движения пальца, вниз, перетаскивания и вверх. "Щелчок" даже не должен исходить с экрана. Это может быть кто-то, кто нажимает клавишу enter.

использовать OnTouchListener когда вы хотите получать события от чьего-то пальца на экране.

использовать OnClickListener когда вы хотите обнаружить кликов.

  • onClickListener используется всякий раз, когда возникает событие щелчка для любого представления, например: нажмите событие для кнопки, ImageButton.

  • onTouchListener используется, когда вы хотите реализовать сенсорный функциональность, например, если вы хотите получить координаты экрана, где вы касаетесь точно.

из официального документа, определение для обоих являются:

  • onClickListner: определение интерфейса для обратного вызова вызывается при щелчке представления.
  • onTouchListener: определение интерфейса для обратного вызова, вызываемого при отправке события касания в это представление. Обратный вызов будет вызван до того, как событие касания будет передано в представление.

одна хорошая причина использовать события ontouch над событиями onclick - это получить более быстрый ответ на щелчок пользователя. Когда событие onclick испытывает задержку в ответе и выполнении необходимых действий. события ontouch лучше подходят для доставки высокопроизводительных мобильных веб-приложений.

предпочитаю использовать onTouch. Приведу вам пример: когда у вас есть ViewPager и TextView в нем. если вы реализуете setOnClickListener в textView, вы не сможете прокручивать ViewPager при касании / прокручивании TextView

OnClickListener - используется для основной цели, когда нам просто нужен щелчок от пользователя, т. е. щелчок кнопки, отсутствие перетаскивания или жестов на экране

OnTouchListener в основном более тонко настроенный контроль, чем OnClickListener. Он выполняет и действие на пресс / релиз на экране он позволяет пользователю с комбинацией перемещения, вниз-сенсорный, вверх-сенсорный, палец перетащить или любой жест движения на экране

Comments

    Ничего не найдено.