java - 在用户触摸屏幕的地方放置对话框

标签 java android dialog touch

<分区>

Possible Duplicate:
Show AlertDialog in any position of the screen

如您所知,默认 Dialog 具有 Gravity 属性,如 RightTop 等,但它是否可能将对话框放置在用户触摸屏幕而不是默认重力属性的地方?

使用来自 onTouch(...) 方法或类似方法的点击 x 和 y 坐标,这可能吗?

例如,我触摸了屏幕上的 (50, 50) x 和 y 坐标,可能不在同一位置,而是靠近该触摸点的任何位置。

最佳答案

从事件(比如 onTouchListener)中获取 Action 的坐标,然后使用对话框的布局参数设置位置

WindowManager.LayoutParams params = myDialog.getWindow().getAttributes();
params.x = 300;
params.y = 300;
myDialog.getWindow().setAttributes(params);

关于java - 在用户触摸屏幕的地方放置对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12973647/

相关文章:

java - jsoup android java.lang.RuntimeException : Unable to find form

java - Android Studio - java.lang.NullPointerException : Attempt to invoke virtual method 'void android. widget.Button.setOnClickListener

c# - saveFileDialog 长时间等待 "Okay"确认

Android 类 Parcelable 与 ArrayList

jquery - CSS 和 Jquery : Trying to add CSS class to dialog box

jquery - jquery如何改变对话框文本大小

java - 下载带有 MVP 图案的照片

java - ClassNotFoundException 与 java 代理 (-javaagent :jarpath)

java - Java 中的持久 HttpURLConnection

java - 记录游戏框架之外的类