2015-08-24 4 views

ответ

1

Боюсь, что нет. Если бы это было возможно, вы могли бы удалить наблюдателей для других расширений и вызвать всевозможные проблемы для этих расширений.

Я предполагаю, что это для удобства при разработке? Где вы несколько раз добавляете несколько наблюдателей?

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

module Example 

    def.attach_shadow_observer 
    model = Sketchup.active_model 
    model.shadow_info.remove_observer(@shadow_observer) if @shadow_observer 
    @shadow_observer = MyShadowObserver.new 
    model.shadow_info.add_observer(@shadow_observer) 
    end 

end 

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

 Смежные вопросы

  • Нет связанных вопросов^_^