Как скопировать текст из текстового поля внутри приложения Gluon в буфер обмена системы Andriod, а не только внутри приложения? - PullRequest
0 голосов
/ 16 октября 2019

Я пытаюсь скопировать значение текстового поля в буфер обмена смартфона. Но я «активирую» встроенную опцию «копировать-вставить» моего телефона, как обычно, и делаю Копирование, но скопированное значение доступно ТОЛЬКО в приложении, а не за его пределами.

РЕДАКТИРОВАТЬ: Я реализовал жест «удерживать нажатой», из приведенного ниже примера: Действие копирования текстового поля при длительном удержании (всплывающее окно копирования)

Но это работает только внутри приложения. Я не могу получить доступ к системному буферу обмена. Я могу сделать скопировать и вставить внутри приложения. Но не вставляйте снаружи и не копируйте что-либо извне, а вставляйте это внутри приложения.

Поэтому я запускаю событие (нажатие кнопки), которое должно скопировать текст в буфер обмена

Это часть кода, которая отлично работает на рабочем столе, но ничего не копирует вбуфер обмена смартфона.


 TextField textfield = new TextField();
 Button b = new Button("copy");
        b.setOnAction(event -> {
            Clipboard clipboard = Clipboard.getSystemClipboard();
            //Alert to have some Information about the content of the clipboard
            Alert alert = new Alert(AlertType.INFORMATION);
            alert.setContentText("clipboard content before: " + clipboard.getContent(DataFormat.PLAIN_TEXT));
            alert.showAndWait();
            ClipboardContent content = new ClipboardContent();

            content.put(DataFormat.PLAIN_TEXT, textfield.getText());
            clipboard.setContent(content);
        });

Есть ли что-то другое на смартфоне?

Или я могу заставить "родные" функции копирования и вставки работать в приложении?

На рабочем столе предупреждениевсегда будет отображать последний скопированный контент.

на смартфоне это всегда null , несмотря ни на что.

Есть идеи, как мне подойти к этому?

...