Действительно ли возможно переместить компоненты вокруг экрана с помощью стандартной пчелы андроида?

Добавьте этот Jquery в ваш код, и он, вероятно, будет работать.

 $('body').on('click', function (e) {
        $('[target=popover]').each(function () {
            if (!$(this).is(e.target) && $(this).has(e.target).length === 0 && $('.popover').has(e.target).length === 0) {
                $(this).popover('hide');
            }
        });
    });

Также вы можете попробовать это:

Вы можете добавить это в свой код и попробовать.

 <a class="close" href="#">Close</a>  

Также добавьте этот jquery:

 $('.close').click(function() {
       $(".class").fadeOut(300);
    });
5
задан Ravi 8 July 2016 в 13:11
поделиться

3 ответа

Да. Это зависит, чего Вы пытаетесь достигнуть.

Это может быть сделано с помощью стандартных API, но эта функциональность не является частью стандартных API. Таким образом, существует нет widget.DragOverHere() метод, если Вы не пишете тот.

Тем не менее это не было бы ужасно сложно, чтобы сделать. Как минимум необходимо было бы записать пользовательский подкласс Представления и реализовать два метода: onDraw(Canvas c) и onTouch(MotionEvent e). Грубый эскиз:

class MyView extends View {

    int x, y;  //the x-y coordinates of the icon (top-left corner)
    Bitmap bitmap; //the icon you are dragging around

    onDraw(Canvas c) {
      canvas.drawBitmap(x, y, bitmap);
    }

    onTouch(MotionEvent e) {
      switch(e.getAction()) {
      case MotionEvent.ACTION_DOWN:
        //maybe use a different bitmap to indicate 'selected'
        break;
      case MotionEvent.ACTION_MOVE:
        x = (int)e.getX();
        y = (int)e.getY();
        break;
      case MotionEvent.ACTION_UP:
        //switch back to 'unselected' bitmap
        break;
      }
      invalidate(); //redraw the view
    }
}
6
ответ дан 14 December 2019 в 13:47
поделиться

Путем я сделал, это должно иметь абсолютное расположение и затем просто обновить положение объекта, когда оно перетаскивается. Необходимо реализовать перетаскивание себя. Если виджеты имеют естественный порядок (панель инструментов, где Вы хотите смочь перетащить кнопки вокруг), можно сложить абсолютное расположение сверх панели инструментов и когда перетаскивание запускается, Вы добавляете его к абсолютному расположению и когда это заканчивается, Вы добавляете его назад к первоначальному макету в новом положении.

0
ответ дан 14 December 2019 в 13:47
поделиться

До некоторой степени. Это зависит, на какой степени свободы Вы хотите дать пользователю. Одним решением, которое приходит на ум, является TableLayout с предопределенными ячейками. Пользователь может затем коснуться и перетащить компоненты. При перетаскивании компонента Вы просто захотите нарисовать изображение его под пальцем пользователя, но когда они выпустят, удаляют компонент из, он - предыдущий родитель, и добавьте, что это к новому родителю с помощью ViewGroup добавляет/удаляет методы.

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

0
ответ дан 14 December 2019 в 13:47
поделиться
Другие вопросы по тегам:

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