Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何创建自定义Android视图?使用XML对象还是图形API?_Java_Android - Fatal编程技术网

Java 如何创建自定义Android视图?使用XML对象还是图形API?

Java 如何创建自定义Android视图?使用XML对象还是图形API?,java,android,Java,Android,我正在尝试创建一个新视图,该视图将: 加载图像 允许用户用两个手指缩放和旋转图像,同时“裁剪框”在顶部保持半透明,而图像延伸到“裁剪框”之外 最终目标是能够标记主图像的旋转和位置(以便稍后我可以裁剪或显示裁剪框内的区域) 我想知道我是否可以用一个ImageView将图像放在背景中,另一个ImageView将裁剪框放在上面,然后使用TouchEvents移动图像,这样行吗 或者我需要在2D表面上使用一些绘图API吗 我对在Android中创建自定义对象非常陌生,这些对象不仅仅是定制的开箱即用视

我正在尝试创建一个新视图,该视图将:

  • 加载图像

  • 允许用户用两个手指缩放和旋转图像,同时“裁剪框”在顶部保持半透明,而图像延伸到“裁剪框”之外

  • 最终目标是能够标记主图像的旋转和位置(以便稍后我可以裁剪或显示裁剪框内的区域)

我想知道我是否可以用一个
ImageView
将图像放在背景中,另一个
ImageView
将裁剪框放在上面,然后使用
TouchEvents
移动图像,这样行吗

或者我需要在2D表面上使用一些绘图API吗

我对在Android中创建自定义对象非常陌生,这些对象不仅仅是定制的开箱即用视图

创建这样的东西的标准方法是什么


谢谢

通过扩展带有两个重叠的
ImageView
RelativeLayout
来创建一个
复合视图。然后,在新创建的视图中重写
onTouch
事件或重写
OnTestureDetector
接口

正式文件: 另一个教程: