从头到尾复制 就ok
public class mytextview extends android.support.v7.widget.AppCompatTextView{ private static final String TAG = "MoveTextView"; private int lastX = 0; private int lastY = 0; private static final int screenWidth = 720; private static final int screenHeight = 1280; public mytextview(Context context, AttributeSet attrs) { super(context, attrs); } @Override public boolean onTouchEvent(MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: lastX = (int) event.getRawX(); lastY = (int) event.getRawY(); break; case MotionEvent.ACTION_MOVE: int dx =(int)event.getRawX() - lastX; int dy =(int)event.getRawY() - lastY; int left = getLeft() + dx; int top = getTop() + dy; int right = getRight() + dx; int bottom = getBottom() + dy; if(left < 0){ left = 0; right = left + getWidth(); } if(right > screenWidth){ right = screenWidth; left = right - getWidth(); } if(top < 0){ top = 0; bottom = top + getHeight(); } if(bottom > screenHeight){ bottom = screenHeight; top = bottom - getHeight(); } layout(left, top, right, bottom); lastX = (int) event.getRawX(); lastY = (int) event.getRawY(); break; case MotionEvent.ACTION_UP: break; default: break; } return true; } }
在drawable 下面创建shap.xml文件
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" android:useLevel="false" > <solid android:color="@color/colorAccent" /> <padding android:left="2dp" android:top="1dp" android:right="2dp" android:bottom="1dp" /> <stroke android:width="1dp" android:color="@android:color/holo_blue_light" /> <size android:width="15dp" android:height="15dp" /> </shape>
里面颜色可以自己随便改动
这样就OK了