Существует ли способ передать касания через к iPhone?

Я понимаю, что подчеркивание технически обосновано. Проверьте:

https://developer.mozilla.org/en/underscores_in_class_and_id_names

"... errata к спецификации, опубликованной в начале 2001 года, сделана подчеркивает законность в первый раз ».

Статья, указанная выше, никогда не использует их, затем предоставляет список браузеров, которые их не поддерживают, все из которых, по крайней мере, по числу пользователей , long-redundant.

23
задан Ed Marty 10 March 2009 в 17:26
поделиться

2 ответа

В документации ищите Объекты Респондента и Цепочка Респондента

, можно "совместно использовать" касания между объектами путем передачи касанию цепочки респондента. Ваш UIButton имеет респондента/контроллер, который получает события UITouch, мое предположение - то, что, как только он формовал свою интерпретацию сообщения, которое он возвращает - касание обработали и избавились.

Apple предлагает что-то вроде этого (на основе типа касания, конечно):

[self.nextResponder touchesBegan:touches withEvent:event];

Вместо того, чтобы избавиться от сенсорного события это передается.

Sub классифицировал UIButton:

MyButton.h

#import <Foundation/Foundation.h>

@interface MyButton : UIButton {

}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event ;

@end

MyButton.m

#import "MyButton.h"

@implementation MyButton

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {  
    printf("MyButton touch Began\n");
    [self.nextResponder touchesBegan:touches withEvent:event]; 
}
@end
25
ответ дан e.James 29 November 2019 в 00:49
поделиться

Я знаю, что этому вопросу два года (и он уже ответил), но тем не менее ...

Когда я попробовал это сам, прикосновения были перенаправлены, но кнопки больше не вели себя как кнопки. Я также передал прикосновения к «супер», и теперь все хорошо.

Итак, для начинающих, которые могут наткнуться на это, вот как должен выглядеть код:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {  
    [super touchesBegan:touches withEvent:event];
    [self.nextResponder touchesBegan:touches withEvent:event]; 
}
36
ответ дан daveMac 29 November 2019 в 00:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: