无法在blackberry中关闭屏幕
我正在使用无法在blackberry中关闭屏幕,blackberry,screen,Blackberry,Screen,我正在使用finish()关闭当前活动,然后退出Android中的应用程序 然而,我无法关闭黑莓手机的屏幕 public类主屏幕\u AllLatestNews扩展主屏幕{ 公共主要新闻{ 超级(使用所有宽度); } 私有布尔对话框(){ 最终位图徽标=Bitmap.getBitmapResource(“icon.png”); d=新建对话框(“确定离开?", 新字符串[]{”是", "否“},新的int[]{ Dialog.OK,Dialog.CANCEL},Dialog.OK, (标志){
finish()
关闭当前活动,然后退出Android中的应用程序
然而,我无法关闭黑莓手机的屏幕
public类主屏幕\u AllLatestNews扩展主屏幕{
公共主要新闻{
超级(使用所有宽度);
}
私有布尔对话框(){
最终位图徽标=Bitmap.getBitmapResource(“icon.png”);
d=新建对话框(“确定离开?", 新字符串[]{”是", "否“},新的int[]{
Dialog.OK,Dialog.CANCEL},Dialog.OK,
(标志){
公共无效setChangeListener(FieldChangeListener listener){
如果(d.getSelectedValue()==Dialog.OK){
}否则{
d、 close();
}
};
};
d、 show();
返回(d.doModal()==Dialog.OK);
}
公共布尔onClose(){
if(Dialog()){
系统出口(0);
返回true;
}否则
返回false;
}
}
这是我的Main
课程
public类主应用程序{
公共静态void main(字符串[]args){
Main theApp=新Main();
theApp.enterEventDispatcher();
}
公用干管(){
推屏(新MyScreen());
}
公共最终类MyScreen扩展主屏幕{
私有位图logo=Bitmap.getBitmapResource(“logo_page.png”);
私有位图字段bmfield;
公共MyScreen(){
片名(“东方日报”);
bmfield=新位图字段(徽标,Field.Field\HCENTER
|位图字段(可聚焦){
受保护的布尔导航单击(int状态,int时间){
Main.this.pushScreen(新的Main_AllLatestNews());
Main.this.popScreen(MyScreen.this);
返回true;
}
};
}
}
这完全取决于你希望你的亲密行为如何发挥作用。另外,我只能读英语,所以我不能100%确定你的对话框所说的内容。我假设这与关闭应用程序有关(是或否)
总之,通常,我的应用程序会通过覆盖main-screen
子类中的onClose()
方法来关闭。您实际上不需要监听退出键。onClose()当用户从应用程序中一路逃出,或按下带有blackberry图标的小按钮,然后选择关闭时,
将被正常调用
public final class MyScreen扩展主屏幕{
/**@如果用户选择关闭应用程序,则返回true*/
私有布尔showDialog(){
位图logo=Bitmap.getBitmapResource(“icon.png”);
对话框d=新建对话框(“确定离开?",
新字符串[]{”是", "否" },
新建int[]{Dialog.OK,Dialog.CANCEL},
Dialog.OK,
标志);
返回(d.doModal()==Dialog.OK);
}
/**关闭应用程序*/
公共布尔onClose(){
如果(showDialog()){
系统出口(0);
返回true;
}否则{
//用户还不想退出
返回false;
}
}
}
这完全取决于你希望你的亲密行为如何发挥作用。另外,我只能读英语,所以我不能100%确定你的对话框所说的内容。我假设这与关闭应用程序有关(是或否)
总之,通常,我的应用程序会通过覆盖main-screen
子类中的onClose()
方法来关闭。您实际上不需要监听退出键。onClose()当用户从应用程序中一路逃出,或按下带有blackberry图标的小按钮,然后选择关闭时,
将被正常调用
public final class MyScreen扩展主屏幕{
/**@如果用户选择关闭应用程序,则返回true*/
私有布尔showDialog(){
位图logo=Bitmap.getBitmapResource(“icon.png”);
对话框d=新建对话框(“确定离开?",
新字符串[]{”是", "否" },
新建int[]{Dialog.OK,Dialog.CANCEL},
Dialog.OK,
标志);
返回(d.doModal()==Dialog.OK);
}
/**关闭应用程序*/
公共布尔onClose(){
如果(showDialog()){
系统出口(0);
返回true;
}否则{
//用户还不想退出
返回false;
}
}
}
有错误,但我不知道如何查看错误在哪里,bb没有类似于logcat的东西。
@Alan,有什么错误?编译错误?运行应用程序时出错?你是如何运行应用程序的?来自模拟机中的Eclipse?在真实设备上?BlackBerry也有日志记录,但我们需要更多信息来帮助你。@Alan,还有,查看您的代码,您可以从Main\u AllLatestNews
中删除一些代码。您不需要收听keyDown()
事件,对话框现在由根MyScreen
类中的showDialog()
创建。查看上面的代码,您正在调用pushScreen()
然后popScreen()
。实际上你不需要这样做。只需调用pushScreen()
。Main\u AllLatestNews
屏幕放在MyScreen
的顶部。你不需要从下方移除MyScreen
。返回(d.doModal()==Dialog.OK)
给我runtimeexception,但返回(d.getSelectedValue()==Dialog.OK);
不给我错误,但不会关闭应用程序。getSelectedValue()
不是正确的调用。你需要显示对话框并获得结果,这就是doModal()
有。请发布代码更新,显示您如何使用我发布的代码。您可以将其添加到代码底部,在标有“编辑:如果您也想保留原始代码”的部分下。谢谢!有错误,但我不知道如何查看错误在哪里,bb没有类似于logcat
@Alan,有问题吗帽子错了?一个comp