大佬教程收集整理的这篇文章主要介绍了android – DragEvent.ACTION_DROP永远不会被调用,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在我的日志猫中,我接到了这个电话:
01-30 13:50:25.003: I/ViewRootImpl(2198): ReporTing drop result: false
谢谢你的帮助.
这是我的代码:
public class buildImage extends Activity implements OnTouchListener,OnDragListener { private LinearLayout slider; private RelativeLayout board; @Override protected void onCreate(Bundle savedInstanceStatE) { this.requestWindowFeature(Window.FEATURE_NO_titlE); super.onCreate(savedInstanceStatE); setContentView(R.layout.build_imagE); //drawing = (Signatureviewmoded) findViewById(R.id.myTest); slider = (LinearLayout) findViewById(R.id.imageSlider); board = (RelativeLayout) findViewById(R.id.borad); setImagesSlider(); } public void setImagesSlider() { ImageView image = new ImageView(this); image.setLayoutParams(new LinearLayout.LayoutParams(100,100)); Drawable draw = getresources().getDrawable(R.drawable.images); image.setImageDrawable(draw); image.setOnDragListener(this); image.setOnTouchListener(this); slider.addView(imagE); } @Override public Boolean onTouch(View view,MotionEvent event) { // TODO Auto-generated method stub if (event.getAction() == MotionEvent.ACTION_DOWN) { CliPDAta data = CliPDAta.newPlaintext("tests","test"); DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(view); view.startDrag(data,shadowBuilder,view,0); //view.setVisibility(View.INVISIBLE); return true; } else { return false; } } @Override public Boolean onDrag(View v,DragEvent event) { // TODO Auto-generated method stub int action = event.getAction(); switch (event.getAction()) { case DragEvent.ACTION_DRAG_STARTED: { Log.i("check6","check6"); // do nothing return true; } case DragEvent.ACTION_DRAG_ENTERED: { Log.i("check4","check4"); //v.setBACkgroundDrawable(enterShapE); return true; } case DragEvent.ACTION_DRAG_EXITED: { // v.setBACkgroundDrawable(normalShapE); Log.i("check3","check3"); return true; } case DragEvent.ACTION_DROP: // Dropped,reassign View to ViewGroup Log.i("check","check"); addNewImage(event); return true; case DragEvent.ACTION_DRAG_ENDED: { Log.i("check2","check2"); // addNewImage(event); return true; } default: break; } return true; } public void addNewImage(DragEvent event) { ImageView image = new ImageView(this); image.setLayoutParams(new LinearLayout.LayoutParams(100,100)); Drawable draw = getresources().getDrawable(R.drawable.images); image.setImageDrawable(draw); board.addView(imagE); float x = event.getX(); float y = event.getY(); image.setX(X); image.setY(y); Log.i("margin","x " + x + " y " + y); } }
我的XML
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://scheR_990_11845@as.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <RelativeLayout android:layout_width="fill_parent" android:id="@+id/borad" android:BACkground="@android:color/darker_gray" android:layout_above="@+id/temp" android:layout_height="fill_parent" > </RelativeLayout> <ScrollView android:layout_width="fill_parent" android:id="@+id/temp" android:layout_alignParentBottom="true" android:layout_height="wrap_content" > <LinearLayout android:id="@+id/imageSlider" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > </LinearLayout> </ScrollView> </RelativeLayout>
以上是大佬教程为你收集整理的android – DragEvent.ACTION_DROP永远不会被调用全部内容,希望文章能够帮你解决android – DragEvent.ACTION_DROP永远不会被调用所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。