Привет, ребята, пожалуйста, помогите мне в этом случае, я хочу перетащить кнопку с названием view, я настроил код, как вы видите там, но я все еще не могу его перетащить, вы можете дать мне неуверенные решения, plz сХорошее объяснение
public class MainActivity extends Activity {
private Timer _timer = new Timer();
private LinearLayout linear1;
private Button view;
private Button btn2;
private Button widgets;
private TextView textview1;
private TimerTask mm;
@Override
protected void onCreate(Bundle _savedInstanceState) {
super.onCreate(_savedInstanceState);
setContentView(R.layout.main);
initialize();
initializeLogic();
}
private void initialize() {
linear1 = (LinearLayout) findViewById(R.id.linear1);
view = (Button) findViewById(R.id.view);
btn2 = (Button) findViewById(R.id.btn2);
widgets = (Button) findViewById(R.id.widgets);
textview1 = (TextView) findViewById(R.id.textview1);
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
view.setOnDragListener( new View.OnDragListener() {
PointF DownPT = new PointF();
PointF StartPT = new PointF();
@Override public boolean onDrag(View v, android.view.DragEvent event) {
int dragEvent = event.getAction();
switch (dragEvent) {
case android.view.DragEvent.ACTION_DRAG_STARTED :
DownPT.x = event.getX();
DownPT.y = event.getY();
StartPT = new PointF( view.getX(), view.getY() ); break;
case android.view.DragEvent.ACTION_DRAG_LOCATION :
PointF mv = new PointF( event.getX() - DownPT.x, event.getY() - DownPT.y);
view.setX((int)(StartPT.x+mv.x)); view.setY((int)(StartPT.y+mv.y));
StartPT = new PointF( view.getX(), view.getY() ); break;
case android.view.DragEvent.ACTION_DRAG_ENTERED :
case android.view.DragEvent.ACTION_DRAG_EXITED :
break;
case android.view.DragEvent.ACTION_DROP : break;
default : break;
}
return true;
}
});
Мне нужны хорошие объяснения, ребята, потому что мне нужно понять проблему, спасибо, что нашли время помочь мне!и мне нужно знать, какое другое решение, чтобы исправить эту проблему, ребята