我正在开发一个电子书应用程序。我有一些位图从左到右和从右到左过渡。我没有在屏幕上添加任何字段。如何让用户使用TouchEvent确定位图转换的屏幕上的点击次数。我需要将屏幕划分为3个部分,使得每个部分应具有120像素宽度以便点击位图。
我无法实现FieldChangeListener,因为它不支持应用程序要求。
我想使用以下代码来划分屏幕。这是正确的代码吗?
protected boolean touchEvent(TouchEvent message) {
if (message.getEvent() == TouchEvent.CLICK) {
int x = message.getX(1);
int y = message.getY(1);
XYRect myArea = new XYRect();
getExtent(myArea);
myArea.setLocation(0, 0);
if (myArea.contains(x, y)) {
Dialog.alert("Click successful!");
}
}
return super.touchEvent(message);
答案 0 :(得分:0)
在那种情况下Koushik,我有另一种解决方案。
您可以创建一个HorizontalFieldManager添加到在参数中添加了HORIZONTAL_SCROLL的屏幕
然后继续将图像添加到HorizontalFieldManager。图像将直接相邻添加,您可以通过简单的触摸事件交换每个图像 您无需实际编写导航的任何特定代码
让图像为BitmapFields
为了获得更好的外观,您可以使焦点BitmapField更加放大
您还可以为此添加更多内容,例如让每个图像占据大部分屏幕,其他图像略微可见,以便帮助用户识别旁边有图像 要占用整个屏幕,您需要在HorizontalFieldManager的sublayout()方法中设置布局
希望这能解决您的问题。谢谢。
答案 1 :(得分:-1)
我认为上述代码无法解决您的要求
如果您尝试使用触摸事件实际翻阅图像,可以使用PictureScrollField,但我怀疑它是否在风暴中工作
它必须在storm2中运行良好,因为它使用版本6.0 OS
使用此功能,您实际上可以从左到右翻转图像,每个图像都占据整个屏幕
如果假设PictureScrollField与您的设备不兼容,那么您可以通过创建自定义类并使用字段
扩展它来使用Field。如果问题解决了,请告诉我