Arhn - архитектура программирования

Как я могу отобразить всплывающее сообщение в опции копирования буфера обмена, нажмите в Android

В своем фрагменте я использовал один макет. В этом случае для одного текстового просмотра мне нужно предоставить опцию копирования.

<TextView
                    android:id="@+id/txtShareWinurl"
                    style="@style/matchWidth"
                    android:layout_height="@dimen/dimen_fifty"
                    android:layout_gravity="center"
                    android:layout_margin="@dimen/dimen_ten"
                    android:background="@drawable/verylight_gray_bg_border"
                    android:gravity="center"
                    android:padding="@dimen/dimen_five"
                    android:text="@string/app_name"
                    android:textColor="@color/gray_code"
                    android:textSize="@dimen/dimen_fifteen"
                    android:textIsSelectable="true"
                    android:textStyle="bold" />

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

Я пытался и Google некоторые ссылки, но мне не удалось.


  • Пройдите код, где вы вызываете тост 18.06.2015
  • после добавления textIsSelectable, если я долго нажимаю, я получаю буфер обмена. Если я нажму опцию копирования, мне нужно отобразить тост. 18.06.2015

Ответы:


1

Проверьте это

Вы можете переопределить ClipboardManager onPrimaryClipChanged() Listner

18.06.2015

2

Единственный способ, который я знаю, это использовать интерфейс ActionMode.Callback

private class ActionModeCallbackWrapper implements ActionMode.Callback {
    private final ActionMode.Callback wrapped;

    private ActionModeCallbackWrapper(ActionMode.Callback wrapped) {
        this.wrapped = wrapped;
    }

    @Override
    public boolean onCreateActionMode(ActionMode mode, Menu menu) {
        return wrapped.onCreateActionMode(mode, menu);
    }

    @Override
    public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
        return wrapped.onPrepareActionMode(mode, menu);
    }

    @Override
    public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
        return wrapped.onActionItemClicked(mode, item);
    }

    @Override
    public void onDestroyActionMode(ActionMode mode) {
        wrapped.onDestroyActionMode(mode);
    }
}

И используйте его в своем представлении следующим образом (документы)

@Override
public ActionMode startActionMode(ActionMode.Callback callback) {
    mActionMode = super.startActionMode(new ActionModeCallbackWrapper(callback));
    return mActionMode;
}

Таким образом, вы можете обнаружить событие onActionItemClicked и показать тост или что угодно.

18.06.2015

3

Это зависит от вашего сценария, но вы можете обнаружить изменение буфера обмена с помощью ClipboardManager:

Документация по ClipbardManager

Пример кода:

ClipboardManager clipboardManager = (ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
clipboardManager.addPrimaryClipChangedListener(new ClipboardManager.OnPrimaryClipChangedListener() {
    @Override
    public void onPrimaryClipChanged() {
        Toast.makeText(MainActivity.this, "Content changed", Toast.LENGTH_LONG).show();
    }
});
18.06.2015
  • Не могли бы вы предоставить любую ссылку для обнаружения менеджера буфера обмена. 18.06.2015
  • Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..