我不久前开始学习Android,有一个与解决简单任务相关的问题。假设我有一个视图(可能是一个按钮),我希望用户可以用手指在屏幕上移动它。在AbsoluteLayout被弃用之前,正确的方法似乎很明显。我只需要根据相应的事件改变视图的位置即可。但现在应该怎么做呢?
我不久前开始学习Android,有一个与解决简单任务相关的问题。假设我有一个视图(可能是一个按钮),我希望用户可以用手指在屏幕上移动它。在AbsoluteLayout被弃用之前,正确的方法似乎很明显。我只需要根据相应的事件改变视图的位置即可。但现在应该怎么做呢?
如果您想通过视图来浏览应用程序或在画廊中翻页查看图片,Android提供了一系列小部件来完成这些操作。如果您想要在大型图片上平移,也许这篇文章可以帮到您:使用触摸事件在画布中显示图片
我正在使用FrameLayout并更新marginLeft和marginTop。
您可以将多个子项添加到FrameLayout中,但由于多个分辨率问题,不建议这样做。
FrameLayout旨在阻止屏幕上的某个区域以显示单个项目。通常,应该使用FrameLayout来容纳单个子视图,因为很难以一种可扩展到不同屏幕大小的方式组织子视图,而不会使子视图重叠。但是,您可以将多个子项添加到FrameLayout中,并通过为每个子项分配重力(使用android:layout_gravity属性)来控制它们在FrameLayout中的位置。
这个“警告”不适用于您的情况,因为您明确根据用户触摸事件设置了边距。