
附加信息和简短摘要 – 真正的问题
这很有趣.我有另一个项目是一个简单的活动.在那里,我可以拖现在在这个项目中,我阻止了所有地方的评论.只有几条线,像另一个项目,但仍然没有拖累.
Drag is in progress,but there is no drag window handle.
有时它说.我也搜索过,但我不能这样做.
代码现在是:
protected voID onCreate(Bundle savedInstanceState) { Log.d(TAG,"matching ggame OnCreate"); super.onCreate(savedInstanceState); setContentVIEw(R.layout.activity_matchgame); setupForGame(); Log.d(TAG,"matching game OnCreate ends");}//oncreate endvoID setupForGame(){ Log.d(TAG,"matching game setupforgame"); imageAnswer = (ImageVIEw) findVIEwByID(R.ID.imgAnswer); imageAnswer = (ImageVIEw) findVIEwByID(R.ID.imgAnswer);}public boolean ontouch(VIEw vIEw,MotionEvent motionEvent) { Log.d(TAG,"ontouch never"); if (motionEvent.getAction() == MotionEvent.ACTION_DOWN) { ClipData data = ClipData.newPlainText("",""); VIEw.DragShadowBuilder shadowBuilder = new VIEw.DragShadowBuilder(vIEw); vIEw.startDrag(data,shadowBuilder,vIEw,0); vIEw.setVisibility(VIEw.INVISIBLE); return true; } else { return false; }}@OverrIDepublic boolean onDrag(VIEw receivingLayoutVIEw,DragEvent dragEvent) { Log.d(TAG,"ondrag start"); 还没到里面
我做了静态,看看是否是这个问题.
<?xml version="1.0" enCoding="utf-8"?><relativeLayout xmlns:androID="http://schemas.androID.com/apk/res/androID" xmlns:tools="http://schemas.androID.com/tools" androID:orIEntation="vertical" androID:layout_wIDth="match_parent" androID:layout_height="match_parent" androID:paddingleft="@dimen/activity_horizontal_margin" androID:paddingRight="@dimen/activity_horizontal_margin" androID:paddingtop="@dimen/activity_vertical_margin" androID:paddingBottom="@dimen/activity_vertical_margin" androID:ID="@+ID/relative_layout" tools:context=".games.MatchingGame"> <ImageVIEw androID:ID="@+ID/imgAnswer" androID:layout_wIDth="111dp" androID:layout_height="111dp" androID:src="@drawable/b3_1" androID:layout_alignParentleft="true" androID:layout_centerInParent="true" /></relativeLayout>
它与另一个项目相同,但它不工作.我看着所有的可能性和调试.
请不要问拖动方法代码;这不重要.它不能输入.
当我按住并拖动图像时,这将进入一个循环,直到我离开:
I/SPRDHWComposer: util[1759] warning: osdLayer wIDth 111,strIDe 112,not equal!
当我离开图像时:
V/WindowManager: rotationForOrIEntationLw(orIEnt=0,last=1); user=0 USER_ROTATION_LOCKED sensorRotV/WindowOrIEntationListener: getProposedRotation : mEnabled = false,mUsedautorotioansensor =true W/WindowManager: Drag is in progress but there is no drag window handle.
如果触摸有问题,我也做出了这一点,但是它仍然是一样的:
imageAnswer.setontouchListener(new OntouchListener() { @OverrIDe public boolean ontouch(VIEw v,MotionEvent event) { //if (event.getAction() == MotionEvent.ACTION_DOWN) { Log.d(TAG,"ontouch down"); //Log.d(TAG,"parent "+ String.valueOf(img1.getParent())); Log.d(TAG,"vIEw "+String.valueOf(v)); ClipData data = ClipData.newPlainText("",""); VIEw.DragShadowBuilder shadowBuilder = new VIEw.DragShadowBuilder(v); v.startDrag(data,v,0); v.setVisibility(VIEw.INVISIBLE); return true; 这是我的拖放工作的旧项目.我看不到区别:
https://gist.github.com/anonymous/540a70e05de6d765e20896b47deb7eb2
当我这样做
imageAnswer.setonDragListener(new VIEw.OnDragListener() { public boolean onDrag(VIEw v,DragEvent event) { Log.d(TAG,"drag"); return false; }}); 它也不工作.没有日志.
这也不是一个日志:
imageAnswer.setonDragListener(new dropListener());private class dropListener implements VIEw.OnDragListener { @OverrIDe public boolean onDrag(VIEw v,DragEvent event) {Log.d("Chic","ondrag"); switch (event.getAction()) { case DragEvent.ACTION_DRAG_STARTED: break; case DragEvent.ACTION_DRAG_ENTERED: break; case DragEvent.ACTION_DRAG_EXITED: break; case DragEvent.ACTION_DROP: break; case DragEvent.ACTION_DRAG_ENDED: break; default: break; } return true; } } 两个项目有区别:
这可能是原因吗?
我也试图把所有setondrag setontouch放在内部.
解决方法 就我所见(例如,here)而言,ontouch和onDrag根本不起作用.为什么不把所有的代码放在onDrag中?根据你的代码,这应该是足够的. 总结以上是内存溢出为你收集整理的在onuch之后,它不能在Android上进行播放全部内容,希望文章能够帮你解决在onuch之后,它不能在Android上进行播放所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)