Класс презентации в Jelly Bean Plus не перехватывает onTouchEvent

Я занимаюсь разработкой приложения для Android, которое отображает некоторый уникальный контент на вторичном дисплее. Презентационный класс впервые представлен в Jelly Bean Plus(4.2.1). Это особый вид диалога, целью которого является представление контента на дополнительном дисплее. Я тестирую свое приложение с помощью симулятора вторичных дисплеев, который можно открыть из настроек - параметров разработчика. Теперь я хотел бы перехватить события касания на дополнительном дисплее. Взгляните на мой презентационный класс

public class NewPresentation extends Presentation {

    public NewPresentation(Context outerContext, Display display) {
        super(outerContext, display);
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.notes_preview);
    }

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        return super.onTouchEvent(event);
    }
}

Но это на TouchEvent не срабатывает, когда я касаюсь где-то на дополнительном дисплее.

Я сомневаюсь, что поскольку Presentation расширяет диалог, который не может перехватывать события касания (не уверен), то же самое делает и класс Presentation

Есть ли способ заставить класс Presentation перехватывать сенсорные события? Пожалуйста, помогите мне.

1 ответ

Так как класс Presentation распространяется на Dialog, а сам диалог является интерактивным, вы можете получать сенсорные события из вашего класса презентации. Я попробовал пример приложения на устройстве с включенным дополнительным дисплеем и сенсорным вводом, и это сработало. Ваш дополнительный дисплей может не иметь сенсорной поддержки

Другие вопросы по тегам