我正在学习移动Java程序,我正在尝试创建一个程序,我可以通过从左到右或从右到左拖动来在屏幕上显示图像。
我有触摸屏手机,没有硬件键盘。
我正在尝试以下代码,其中我有两种形式,当我在屏幕上滑动fingure时,我想显示另一种形式。
import java.io.IOException;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
public class ImageDisplay extends MIDlet{
private Display display;
private Form form1,form2;
private Image myImage1,myImage2;
public void startApp(){
display = Display.getDisplay(this);
form1 = new Form ("Image Display");
form2 = new Form("Second Image");
try {
myImage1 = Image.createImage("/bgscaled.jpg");
myImage2 = Image.createImage("/spla77sh.jpg");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
form1.append(myImage1);
form2.append(myImage2);
display.setCurrent(form1);
display.setCurrent(form2);
}
public void pauseApp(){
}
public void destroyApp(boolean unconditional){
notifyDestroyed();
}
}
答案 0 :(得分:1)
当屏幕滑动发生时,您无法通过LCDUI Form
收到通知
您可以添加“下一步”和“上一页”按钮,并在单击按钮时更改表单。
答案 1 :(得分:0)
您需要使用Canvas代替Form
屏幕,因为Canvas
有各种方法(例如,pointerDragged
),可用于确定触摸,发布和拖动动作。
使用Canvas
可能需要做很多工作(因为您的代码将负责显示屏上绘制的每个像素)。但是,您可能会发现J2ME Polish对将Form
用户界面转移到Canvas
非常有用。 (我不确定,但J2ME Polish也可能会照顾您正在寻找的滑动行为。)