国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

Android實現圖片浮動隨意拖拽效果

2019-10-22 18:12:26
字體:
來源:轉載
供稿:網友

本文實例為大家分享了Android實現圖片浮動拖拽效果的具體代碼,供大家參考,具體內容如下

實現步驟

1.先自定義一個浮動工具類

public class MoveImage extends ImageView { /** * * 浮動工具類 * */ private int lastX = 0; private int lastY = 0; private int dx; private int dy; private float movex = 0; private float movey = 0; private int screenWidth; private int screenHeight; public MoveImage(Context context, AttributeSet attrs) { super(context, attrs); screenWidth = ScreenUtils.getWidth(context); screenHeight = ScreenUtils.getHeight(context); } @Override public boolean onTouchEvent(MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: lastX = (int) event.getRawX(); lastY = (int) event.getRawY(); movex = lastX; movey = lastY; break; case MotionEvent.ACTION_MOVE: dx = (int) event.getRawX() - lastX; 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: //避免滑出觸發(fā)點擊事件 if ((int) (event.getRawX() - movex) != 0 || (int) (event.getRawY() - movey) != 0) { return true; } break; default: break; } return super.onTouchEvent(event); }}

2.xml布局的引用

<com.zjtd.bzcommunity.text.MoveImage android:id="@+id/iv_phone_bar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:layout_marginBottom="70dp" android:src="@drawable/my_qiandao_icon" />

3.activity的實現

private MoveImage iv_phone_bar;//簽到圖片iv_phone_bar = (MoveImage) view.findViewById(R.id.iv_phone_bar);iv_phone_bar.setOnClickListener(this);// 簽到case R.id.iv_phone_bar: startActivity(new Intent(getActivity(), SignAcitvity.class));//點擊跳轉頁面 break;

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。


注:相關教程知識閱讀請移步到Android開發(fā)頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 芒康县| 武鸣县| 鞍山市| 漯河市| 荔波县| 娄底市| 卓资县| 饶平县| 双辽市| 汕尾市| 本溪| 高阳县| 江西省| 青州市| 龙井市| 本溪市| 奇台县| 随州市| 绥芬河市| 息烽县| 桃江县| 大宁县| 天等县| 沙雅县| 虹口区| 巨野县| 应城市| 南漳县| 宜都市| 平阴县| 横峰县| 连州市| 阳城县| 洛浦县| 涡阳县| 镇原县| 临漳县| 绍兴县| 南丹县| 嘉荫县| 肇东市|