2
A
回答
2
您无法直接获取位图的坐标。你需要自己计算。 使用ImageView的位置,并且可以处理它。
当然,当您在Activity onCreate之后,您可以访问任何虚增(活动)视图参数。 例如。 ImageView a; a.getPaddingBottom(); 像所有的协调员(左右等...) 在此之后,你需要ImageView的高度和宽度。那么,当你知道意见的位置时,你可以计算出你的答案和宽度。
例子:
final ImageView iv_YourImage = (ImageView) findViewById(R.id.iv_imageview);
public boolean onTouch(View v, MotionEvent event){
int topParam = iv_YourImage.getPaddingTop();
int rightParam = iv_YourImage.getPaddingRight();
int maxTopParam = topParam+iv_YourImage.getMaxHeight();
int maxRightParam = rightParam + iv_YourImage.getMaxWidth();
if(event.getX>topParam&&event.getX<maxTopParam){
//the x coordinate is in your image... do the same to Y
}
return true;
}
0
看看如果答案是太短了下面的代码:
Android: Detect touch on actual image in ImageView
的代码替换这个答案的填充和最大高度编码,并替换它使用getWidth()和getHeight()显示图像的实际宽度和高度。并使用屏幕宽度和高度来计算其位置。如果你想要更详细地解答你的问题,你应该提供更多的信息,比如你在哪里绘制位图...你是在活动XML中定义它,还是在随机位置绘制它,例如X和Y坐标触摸事件的答案取决于该信息。
package com.example.img;
imports....
public Image extends Activity {
ImageView imgYourImage;
// int imgWidth;
// etc...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_image);
imgYourImage = (ImageView) findViewById(R.id.yourImage);
imgDimension();
}
private void imgDimension() {
imgWidth = imgYourImage.getWidth();
// at newer api's you can use getLeft() and getTop() of imageView
// if getLeft() works you have the leftX coordinate of image already.
// do same with height
// also get the screen Width and Height by display.getWidth() (depreciated)
// Or the newer code display.getSize()
leftX = (screenwidth - imgWidth)/2;
rightx = leftx + imgWidth;
}
请注意,此代码仅在图像显示在屏幕水平中心时起作用。或者如果图像显示在屏幕的垂直中心,则使用顶部和底部。
相关问题
- 1. 如何获得屏幕触摸的x,y坐标?
- 2. 如何获得对应于整个屏幕的屏幕坐标,而不是触摸的视图?
- 3. 如何获得触摸从ValueChanged事件斯威夫特坐标
- 4. Android - 获取屏幕触摸事件
- 5. 如何获得屏幕上的触摸位置(Android)
- 6. MonoTouch/MonoDroid - 将原始触摸坐标转换为屏幕坐标
- 7. 在屏幕上的特定物理坐标中触发触摸事件Android
- 8. Android - 在触摸事件上在屏幕上绘制位图
- 9. 从触摸事件获得真正的imageview坐标
- 10. 如何计算Android屏幕上的触摸坐标?
- 11. 用户触摸时获取屏幕坐标
- 12. 如何在触摸屏幕时获取服务中的事件?
- 13. 如何在Android屏幕关闭时捕获屏幕触摸事件?
- 14. UIView触摸位置坐标
- 15. 接收屏幕触摸事件
- 16. 使用屏幕键盘触摸事件
- 17. 为什么在浮动屏幕上显示触摸屏坐标?
- 18. 触摸屏事件
- 19. 如何知道用户触摸屏幕的屏幕位置?
- 20. 在3D“场景”中处理触摸事件或屏幕到3D坐标
- 21. 如何获得椭圆内像素的坐标? (屏幕截图)
- 22. 如何获得与屏幕相关的视图坐标?
- 23. Monogame触摸位置坐标与触摸屏分辨率不匹配
- 24. 如何获取Android中屏幕上同时触摸的两个点的坐标?
- 25. Cocos2d-x触摸事件坐标系
- 26. 如何获取ogl中触摸屏点的坐标?
- 27. C#如何获取屏幕上特定点的坐标。 (不是鼠标位置)
- 28. 如何在不同屏幕上连接触摸与游戏板的坐标
- 29. 如何获得PDF注释,当我触摸在ipad屏幕上
- 30. 在Android中如何获得手指触摸屏幕的多少?
你能解释一下吗...... – URAndroid