2

我想为我的应用程序创建一个交互式图形。它本质上是一张简单的公交线路图片,用户可以一次选择 2 个站点(一个用于出发时间,另一个用于到达时间)我不知道如何创建此图像,并且有 20 个左右不同可点击的点。有没有我可以用来做这个的框架?或者有没有办法在纯安卓中做到这一点?

谢谢您的帮助。

4

2 回答 2

0

我建议编写一个 onClick 侦听器并使用 Rect 实例的集合来管理“点击”的碰撞/位置。查看on click pagerect page

要记住的一件事是点击的原点,我假设您希望使用图像的一个角作为点 (0,0) 并从那里引用所有内容(点击和矩形)。

于 2013-04-23T23:11:56.367 回答
0

我会说尝试创建一个ImageView来加载您的图像并为该视图设置一个触摸事件侦听器或单击侦听器。硬编码您希望图像在单击时做出反应的所有位置。

使用事件侦听器检查单击将需要您同时处理ACTION_DOWN传入ACTION_UPMotionEvent对象。但是更容易获取用户在页面上单击的位置的坐标,因此您只需要一个侦听器,但需要在处理将传入的坐标转换为MotionEvent图像上的坐标。当您的图像尺寸可以大于屏幕尺寸时,这尤其是一个主要问题。

使用点击监听器可以让你免于这个麻烦。正如@smitec 所说,您需要将图像上的矩形叠加为“按钮”,这样您就可以根据用户按下的按钮对用户输入做出反应。这样,您需要将侦听器绑定到所有侦听器(我想)并硬编码它们在图像上的位置。但是,如前所述,它使您免于稍后处理坐标。

于 2013-04-23T23:24:57.283 回答