- 浏览: 46918 次
- 性别:
- 来自: 常熟
文章分类
最新评论
public class DraftTest extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); DisplayMetrics dm = getResources().getDisplayMetrics(); final int screenWidth = dm.widthPixels; final int screenHeight = dm.heightPixels - 50; final Button b=(Button)findViewById(R.id.btn); b.setOnTouchListener(new OnTouchListener(){ int lastX, lastY; @Override public boolean onTouch(View v, MotionEvent event) { // TODO Auto-generated method stub int ea=event.getAction(); Log.i("TAG", "Touch:"+ea); //Toast.makeText(DraftTest.this, "λ�ã�"+x+","+y, Toast.LENGTH_SHORT).show(); switch(ea){ case MotionEvent.ACTION_DOWN: lastX = (int) event.getRawX(); lastY = (int) event.getRawY(); break; /** * layout(l,t,r,b) * l Left position, relative to parent t Top position, relative to parent r Right position, relative to parent b Bottom position, relative to parent * */ case MotionEvent.ACTION_MOVE: int dx =(int)event.getRawX() - lastX; int dy =(int)event.getRawY() - lastY; int left = v.getLeft() + dx; int top = v.getTop() + dy; int right = v.getRight() + dx; int bottom = v.getBottom() + dy; if(left < 0){ left = 0; right = left + v.getWidth(); } if(right > screenWidth){ right = screenWidth; left = right - v.getWidth(); } if(top < 0){ top = 0; bottom = top + v.getHeight(); } if(bottom > screenHeight){ bottom = screenHeight; top = bottom - v.getHeight(); } v.layout(left, top, right, bottom); Log.i("", "position��" + left +", " + top + ", " + right + ", " + bottom); lastX = (int) event.getRawX(); lastY = (int) event.getRawY(); break; case MotionEvent.ACTION_UP: break; } return false; }}); } }
发表评论
-
Uri转换为File地址
2012-02-20 14:28 1227Uri uri = data.getData(); ... -
Cursor
2012-02-02 15:48 1036使用过 SQLite 数据库的童鞋对 Cursor 应该不 ... -
Json解析
2012-02-02 09:31 718package com.tony.json; im ... -
遍历界面上的控件
2012-01-13 13:02 1000private void EditTextSize(Vi ... -
Android悬浮框
2012-01-10 09:00 1613package com.apkstory.service ... -
动态设置控件大小
2012-01-05 16:38 751LinearLayout.LayoutParams li ... -
Android Camera中参数设置
2012-01-05 16:28 3842parameter.set("jpeg-qua ... -
跳转到铃声选择页面
2011-12-01 12:56 883private static final int RI ... -
获取相同action的程序列表
2011-11-28 17:08 736private static final String ... -
Paint属性
2011-11-22 21:49 811/** * Paint类介绍 * * Pa ... -
Android获取开机启动程序列表
2011-11-22 14:25 1226public class BootStartUtils ... -
Android动态关闭mainfest中的receiver
2011-11-22 14:08 1169ComponentName receiver = new ... -
Android捕获Home键
2011-11-16 12:47 1406@Override public boolean on ... -
Android获取系统时间
2011-10-26 16:11 1819SimpleDateFormat formatter = ne ... -
两个程序中 调用
2011-04-21 23:59 655Intent mIntent = new Intent() ... -
Android 屏幕常亮
2011-04-08 15:51 1059第一种方法 getWindow().addFlags(Win ... -
Android 图片水印
2011-04-08 10:02 1161/* 时间水印处理 */ Time t = new Time ... -
Android 摄像头聚焦
2011-04-06 17:17 1080public AutoFocusCallback mAutoF ... -
Android Camera
2011-04-06 10:56 2359package myj.cameratest; impo ... -
Android任务栏的图标显示
2011-04-06 10:51 3468package com.Example4; import ...
相关推荐
你是否想实现用手指拖动一个按钮或者图片移动到随意的地方,这里有答案。
一个很好看的Android自定义拖动条控件
以按钮为例简单演示了拖动控件的功能,可以以此为原型实现带拖动功能自定义控件。
Android自定义可以随意拖动的控件,包括可拖动的ImageView、TextView.用Android studio编写的代码。
Android自定义可以随意拖动的控件,包括可拖动的ImageView、TextView.用Android studio编写的代码。.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
自定义控件继承Imageview,可随意调用,附调用实例。可实现空间中图片的多种操作,拖拽,缩放,旋转
一个关于自定义控件的小Demo,随着手指移动的小球。 先看下效果图: 实现代码如下: 1.自定义控件类 package com.dc.customview.view; import android.content.Context; import android.graphics.Canvas; import...
1、就是做一个系统级的悬浮按钮,就像iPhone 桌面的那个悬浮按钮效果一样,能随意拖动,并且手一放开,悬浮按钮就自动靠边。 2、可以点击并且可以随意拖动。 3、悬浮按钮自动靠边的时候,或者移动到边上的时候,自动...
有时候不想打开android studio ddms 或者 不想在后台(bugtags) 看数据记录就可以在手机上简单快速的查看数据日志(以悬浮窗的形式)以表格的形式展示 (表格的✎ 列可以拖拽和控制长宽)原理是主应用程序通过service给...
在开发中,会有需求实现控件在屏幕随意拖动,这就需要自定义View,然后在OnTouchEvent事件中,处理MotionEvent.ACTION_MOVE事件,然后通过坐标点传值给onlayout方法,来实现控件的任意拖动,具体代码如下: ...
高仿蜂玩悬浮窗,随意拖动,椭圆形展示,你值得学习。
可以在界面上任何View随意拖动缩放旋转的控件