2016-11-27 13 views
0

У меня есть следующий код в Xamarin форм:Does GestureRecognizers.Add добавляет жест в мою сетку каждый раз, когда я нажимаю на сетку?

wordGrid.GestureRecognizers.Add(new TapGestureRecognizer 
{ 
    NumberOfTapsRequired = 1, 
    Command = new Command(() => 
    { 
     wordDetailGrid.IsVisible = true; 
    }) 
}); 

У меня есть более 10k слова, которые я отображения случайным образом в wordGrid, нажав на сетку. Означает ли это, что если я показываю 100 слов, нажав на wordGrid, он также добавит GestureRecognizer 100 раз?

+0

Каждый раз, когда вы нажимаете на сетку, запускается событие распознавателя жестов, а связанное с ним кодирование работает ... –

+0

Я думаю, что он прикрепляет только один распознаватель ко всему месту, которое принимает сетка. –

ответ

0

Нет, он просто добавляет GestureRecognizer к вашей сетке, независимо от того, сколько или сколько элементов находится в вашей сетке.

С помощью вашего кода вы можете использовать всюду в своей сетке, чтобы выполнить команду tap-command. Это не означает, что базовые элементы имеют это значение TapGestureRecognizer. Это работает, потому что родительский вид (в вашем случае: сетка) имеет этот распознаватель.