当前位置: 首页>>代码示例>>Java>>正文


Java OnDragListener类代码示例

本文整理汇总了Java中android.view.View.OnDragListener的典型用法代码示例。如果您正苦于以下问题:Java OnDragListener类的具体用法?Java OnDragListener怎么用?Java OnDragListener使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


OnDragListener类属于android.view.View包,在下文中一共展示了OnDragListener类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: FolderToggleAdapter

import android.view.View.OnDragListener; //导入依赖的package包/类
public FolderToggleAdapter(Context context, SettingsDecoder settingDecoder, int labelColor, OnDragListener dragListener) {
	super(context, R.layout.folder_item, android.R.id.text1);

	mContext = context;
	mShowLabels = !settingDecoder.hasValue(FolderUtils.KEY_HIDE_LABEL);
	mLabelColor = labelColor;
	mInflator = LayoutInflater.from(context);
	mDragListener = dragListener;
	mRenderSettings = new WidgetSetting(context, new AbstractTracker[]{}, settingDecoder, -420, new Bitmap[]{});
	mShortNames = context.getResources().getStringArray(R.array.tracker_names_short);
	mStates = context.getResources().getStringArray(R.array.tracker_states);
}
 
开发者ID:sunnygoyal,项目名称:PowerToggles,代码行数:13,代码来源:FolderToggleAdapter.java

示例2: onDrag

import android.view.View.OnDragListener; //导入依赖的package包/类
public Disposable onDrag(final OnDragListener onNext, final Consumer<? super Exception> onError, final Runnable onComplete) {
    N.requireNonNull(onNext, "onNext");
    N.requireNonNull(onError, "onError");
    N.requireNonNull(onComplete, "onComplete");

    dispatcher.append(new DispatcherBase<Object>(onError, onComplete) {
        @Override
        public void onNext(Object param) {
            final Tuple2<View, DragEvent> tmp = (Tuple2<View, DragEvent>) param;

            if (Fu.isUiThread()) {
                onNext.onDrag(tmp._1, tmp._2);
            } else {
                UIExecutor.execute(new Runnable() {
                    @Override
                    public void run() {
                        onNext.onDrag(tmp._1, tmp._2);
                    }
                });
            }
        }
    });

    _view.setOnDragListener(new OnDragListener() {
        @Override
        public boolean onDrag(View view, DragEvent dragEvent) {
            dispatcher.onNext(Tuple.of(view, dragEvent));
            return true;
        }
    });

    disposeActions.add(new Runnable() {
        @Override
        public void run() {
            _view.setOnDragListener(null);
        }
    });

    return this;
}
 
开发者ID:landawn,项目名称:AbacusUtil,代码行数:41,代码来源:Observer.java

示例3: a

import android.view.View.OnDragListener; //导入依赖的package包/类
private final void a(View.OnDragListener paramOnDragListener)
{
  this.a.setOnDragListener(paramOnDragListener);
  for (int j = 0; j < this.a.getChildCount(); j++) {
    a(this.a.getChildAt(j), paramOnDragListener);
  }
}
 
开发者ID:ChiangC,项目名称:FMTech,代码行数:8,代码来源:lca.java

示例4: setOnDragListener

import android.view.View.OnDragListener; //导入依赖的package包/类
/**
* @see View#setOnDragListener(OnDragListener)
*/
 public W setOnDragListener(OnDragListener l) {
     mView.setOnDragListener(l);
     return (W)this;
 }
 
开发者ID:AnthZh,项目名称:AndroidViewHelper,代码行数:8,代码来源:ViewWrapper.java

示例5: getView

import android.view.View.OnDragListener; //导入依赖的package包/类
@Override
public View getView(int position, View convertView, ViewGroup parent) {
    if (convertView == null) {
        int type = getItemViewType(position);
        convertView = createView(parent, type);

        convertView.setOnDragListener(new OnDragListener() {
            @Override
            @SuppressWarnings("unchecked")
            //unavoidable generic type problems -> Reference<View>
            public boolean onDrag(View dstView, DragEvent event) {
                Reference<View> ref = (Reference<View>) event.getLocalState();
                final View srcView = ref.reference;

                switch (event.getAction()) {
                case DragEvent.ACTION_DRAG_ENTERED:
                    srcView.setVisibility(View.VISIBLE);
                    dstView.setVisibility(View.INVISIBLE);

                    move(((Integer) srcView.getTag(R.id.reorder_key)),
                         ((Integer) dstView.getTag(R.id.reorder_key)));
                    ref.reference = dstView;
                    break;

                case DragEvent.ACTION_DRAG_ENDED:
                    srcView.post(new Runnable() {
                        @Override
                        public void run() {
                            srcView.setVisibility(View.VISIBLE);
                        }
                    });
                    break;
                }

                return true;
            }
        });

        convertView.setOnLongClickListener(new OnLongClickListener() {
            @Override
            public boolean onLongClick(final View view) {
                // Force a reset of any states
                notifyDataSetChanged();

                // Start the drag on the main loop to allow
                // the above state reset to settle.
                view.post(new Runnable() {
                    @Override
                    @SuppressWarnings("deprecation")
                    //startDrag() --> suppress deprecation because startDragAndDrop() requires minSdkVersion 24
                    public void run() {
                        ClipData data = ClipData.newPlainText("", "");
                        DragShadowBuilder sb = new View.DragShadowBuilder(view);
                        view.startDrag(data, sb, new Reference<>(view), 0);
                    }
                });

                return true;
            }
        });
    }

    convertView.setTag(R.id.reorder_key, position);
    bindView(convertView, position);
    return convertView;
}
 
开发者ID:freeotp,项目名称:freeotp-android,代码行数:67,代码来源:BaseReorderableAdapter.java

示例6: getView

import android.view.View.OnDragListener; //导入依赖的package包/类
@Override
public View getView(int position, View convertView, ViewGroup parent) {
    if (convertView == null) {
        int type = getItemViewType(position);
        convertView = createView(parent, type);

        convertView.setOnDragListener(new OnDragListener() {
            @Override
            public boolean onDrag(View dstView, DragEvent event) {
                Reference<View> ref = (Reference<View>) event.getLocalState();
                final View srcView = ref.reference;

                switch (event.getAction()) {
                case DragEvent.ACTION_DRAG_ENTERED:
                    srcView.setVisibility(View.VISIBLE);
                    dstView.setVisibility(View.INVISIBLE);

                    move(((Integer) srcView.getTag(R.id.reorder_key)).intValue(),
                         ((Integer) dstView.getTag(R.id.reorder_key)).intValue());
                    ref.reference = dstView;
                    break;

                case DragEvent.ACTION_DRAG_ENDED:
                    srcView.post(new Runnable() {
                        @Override
                        public void run() {
                            srcView.setVisibility(View.VISIBLE);
                        }
                    });
                    break;
                }

                return true;
            }
        });

        convertView.setOnLongClickListener(new OnLongClickListener() {
            @Override
            public boolean onLongClick(final View view) {
                // Force a reset of any states
                notifyDataSetChanged();

                // Start the drag on the main loop to allow
                // the above state reset to settle.
                view.post(new Runnable() {
                    @Override
                    public void run() {
                        ClipData data = ClipData.newPlainText("", "");
                        DragShadowBuilder sb = new View.DragShadowBuilder(view);
                        view.startDrag(data, sb, new Reference<View>(view), 0);
                    }
                });

                return true;
            }
        });
    }

    convertView.setTag(R.id.reorder_key, Integer.valueOf(position));
    bindView(convertView, position);
    return convertView;
}
 
开发者ID:Dazzozo,项目名称:freeotp,代码行数:63,代码来源:BaseReorderableAdapter.java

示例7: getView

import android.view.View.OnDragListener; //导入依赖的package包/类
@Override
public View getView(int position, View convertView, ViewGroup parent) {
    if (convertView == null) {
        int type = getItemViewType(position);
        convertView = createView(parent, type);

        convertView.setOnDragListener(new OnDragListener() {
            @Override
            public boolean onDrag(View dstView, DragEvent event) {
                Reference<View> ref = (Reference<View>) event.getLocalState();
                final View srcView = ref.reference;

                switch (event.getAction()) {
                case DragEvent.ACTION_DRAG_ENTERED:
                    srcView.setVisibility(View.VISIBLE);
                    dstView.setVisibility(View.INVISIBLE);

                    move(((Integer) srcView.getTag(KEY)).intValue(),
                         ((Integer) dstView.getTag(KEY)).intValue());
                    ref.reference = dstView;
                    break;

                case DragEvent.ACTION_DRAG_ENDED:
                    srcView.post(new Runnable() {
                        @Override
                        public void run() {
                            srcView.setVisibility(View.VISIBLE);
                        }
                    });
                    break;
                }

                return true;
            }
        });

        convertView.setOnLongClickListener(new OnLongClickListener() {
            @Override
            public boolean onLongClick(final View view) {
                // Force a reset of any states
                notifyDataSetChanged();

                // Start the drag on the main loop to allow
                // the above state reset to settle.
                view.post(new Runnable() {
                    @Override
                    public void run() {
                        ClipData data = ClipData.newPlainText("", "");
                        DragShadowBuilder sb = new View.DragShadowBuilder(view);
                        view.startDrag(data, sb, new Reference<View>(view), 0);
                    }
                });

                return true;
            }
        });
    }

    convertView.setTag(KEY, Integer.valueOf(position));
    bindView(convertView, position);
    return convertView;
}
 
开发者ID:codemonkey85,项目名称:FreeOTP-Android,代码行数:63,代码来源:ReorderableBaseAdapter.java


注:本文中的android.view.View.OnDragListener类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。