2016-06-19 7 views
1

TextViewを上下に移動する必要があります。私はこのコードを持っていますが、TextViewをどの方向にも移動することができます:TextViewを上下に移動する

textView.setOnTouchListener(new View.OnTouchListener() { 
      public boolean onTouch(View v, MotionEvent event) { 
       int eid = event.getAction(); 
       switch (eid) { 
        case MotionEvent.ACTION_MOVE: 
         RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) textView.getLayoutParams(); 
         int x = (int) event.getRawX(); 
         int y = (int) event.getRawY(); 
         layoutParams.leftMargin = x - 200; 
         layoutParams.topMargin = y - 250; 
         textView.setLayoutParams(layoutParams); 
         break; 
        default: 
         break; 
       } 
       return true; 
      } 
     }); 

TextViewを上下に移動する方法はありますか?単に水平ベクターのいずれかのための割り当てが存在しないだけので垂直を移動することを強制するleftMargin割り当て、削除

答えて

1

すなわちを左):

textView.setOnTouchListener(new View.OnTouchListener() { 
     public boolean onTouch(View v, MotionEvent event) { 
      int eid = event.getAction(); 
      switch (eid) { 
       case MotionEvent.ACTION_MOVE: 
        RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) textView.getLayoutParams(); 
        int y = (int) event.getRawY(); 
        layoutParams.topMargin = y - 250; 
        textView.setLayoutParams(layoutParams); 
        break; 
       default: 
        break; 
      } 
      return true; 
     } 
    }); 
+0

を行を削除しましょう。 int x =(int)event.getRawX(); – user3793589

+0

@ user3793589確かに、編集して削除しましたが、この状況ではそれとは関係ありません。 –

関連する問題