2017-07-16 27 views
0

ドラッグ時にテキストビューの位置を変更したい オンタッチイベントでは、シャドウを作成する上でうまく機能します。Androidドラッグしている間にTextViewの位置を変更したい

textview.setOnTouchListener(new View.OnTouchListener() { 
      @Override 
      public boolean onTouch(View v, MotionEvent event) { 
       if (event.getAction() == MotionEvent.ACTION_DOWN) { 
        //ClipData data = ClipData.newPlainText(textview.getText(),textview.getText()); 
        View.DragShadowBuilder shadowBuilder = new View.DragShadowBuilder(textview); 
        textview.startDrag(null,shadowBuilder,textview,0); 
        return true; 
       } 
       return false; 
      } 
     }); 

しかし、ドラッグイベントが終了した後、シャドウが元の状態に移行し、しかし、私は必要は私はのTextViewのコピーを複製または作成しない影のエリア

へのTextViewを設定することです。

答えて

0

私は最終的に、コードを使用するが、TextViewにして、いくつかの位置の問題を持って、

textview.setOnDragListener(new View.OnDragListener() { 
     @Override 
     public boolean onDrag(View v, DragEvent event) { 

      int x = (int)event.getX(); 
      int y = (int)event.getY(); 

      RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(
        RelativeLayout.LayoutParams.WRAP_CONTENT,RelativeLayout.LayoutParams.WRAP_CONTENT); 
      layoutParams.setMargins(x, y, 0, 0); 
      textview.setLayoutParams(layoutParams); 
      return true; 
     } 
    }); 
関連する問題