我正在做一个项目,就像在触摸位置上绘制圆圈并在触摸画布时显示坐标。与链接中的http://wptrafficanalyzer.in/blog/drawing-circle-at-the-touched-position-of-view-canvas/ ..完全相同,他使用PaintView
在其上绘制圆圈。我的问题是,我可以简单地将PaintView
更改为ImageView
吗?当我改变时,我在传递ImageView
的引用以更新坐标更改时出错。它说setTextView(TextView) is undefined for the type ImageView
..如何解决?我是android编程的新手。感谢任何答案。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Getting reference to ImageView
ImageView imageView = (ImageView)findViewById(R.id.imv1);
// Getting reference to TextView tv_coordinate
TextView tvCoordinates = (TextView)findViewById(R.id.tv_coordinates);
// Passing reference of textview to ImageView object to update on coordinate changes
imageView.setTextView(tvCoordinates); //error here
// Setting touch event listener for the ImageView
imageView.setOnTouchListener(imageView);
}
答案 0 :(得分:0)
您无法使用ImageView。 ImageView是Android提供的一种View。 (https://developer.android.com/reference/android/widget/ImageView.html) 为了您的目的(在触摸位置绘制圆圈并显示坐标),ImageView无法帮助。
此链接http://wptrafficanalyzer.in/blog/drawing-circle-at-the-touched-position-of-view-canvas/ ..,他使用自定义视图 您可以使用自己的自定义视图与自定义视图
相同答案 1 :(得分:0)
仍然使用以上链接:http://wptrafficanalyzer.in/blog/drawing-circle-at-the-touched-position-of-view-canvas/ ..
只需在布局文件中更改一件事
<in.wptrafficanalyzer.graphicsdrawpointviewcanvas.PaintView
android:id="@+id/paint_view"
android:layout_width="fill_parent"
android:background="@drawable/your_background_image"
android:layout_height="fill_parent"
android:layout_below="@id/tv_coordinates" />