HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2015
1108
窓月らら[HSP3Dish] dialog命令の動作(たぶん不具合)について4解決


窓月らら

リンク

2015/11/8(Sun) 17:08:31|NO.72850

dialog命令でダイアログを表示後、
Windowsであれば、ダイアログのボタンを押さなければ通常は他の操作はできません。
ですが、Androidではダイアログ以外の部分をタッチすると、ダイアログは消えますが
その後なにも操作ができなくなってしまいます(停止したまま)。

これでは困ってしまいます。何か回避方法はあるのでしょうか?

使用バージョン:HSP 3.5β2

#include "hsp3dish.as" dialog "テストメッセージ。",2 if stat=6 { dialog "YES" } // ダイアログ以外の部分をタッチすると、以下に進めない setcls 1,$000000 redraw 0 color 255,255,255 mes "OK" redraw 1 stop



この記事に返信する


zakki

リンク

2015/11/8(Sun) 17:28:57|NO.72851

試してませんが HspActivity.ui_dispDialog() と HspActivity.ui_dispDialogYN() に

alert.setOnCancelListener(new DialogInterface.OnCancelListener(){    public void onCancel(DialogInterface dialog){ nativepoke( 0, 0 );    } });
みたいなのを追加だと駄目ですか?



窓月らら

リンク

2015/11/8(Sun) 18:29:27|NO.72852

> zakkiさん

ご提示いただいたコードを
HspActivity.java の該当部分に追加したら、解決しました! ありがとうございます。
しかし、やっぱりこれは不具合ですね。次のバージョンで直しておいて欲しいです…

以下を追加しました。

// ダイアログ外で閉じた場合 alert.setOnCancelListener(new DialogInterface.OnCancelListener() { @Override public void onCancel(DialogInterface dialog) { nativepoke( 0, 0 ); } });



窓月らら

リンク

2015/11/11(Wed) 13:21:09|NO.72943

上記の件は、おにたまさんに連絡して修正して頂きましたので
次のバージョンで修正されると思われます。



窓月らら

リンク

2015/11/14(Sat) 21:18:14|NO.73019

ダイアログ関連で更に不具合があったので追記します。
(おにたまさんには連絡済)

ダイアログの改行ですが、プラットフォームによっては □ で表示され
正しく表示できないようです。
Android互換 の Fire OS(Kindle)でこの不具合が発生します。

HspActivity.java に以下のように追加することで解決できました。
msg2 のほうはタイトルなので改行は無い前提で入れていません。

// 実行プラットフォームの改行コードを取得 private static final String BR = System.getProperty("line.separator"); public int ui_dispDialog( String msg1, String msg2, int type ) { msg1 = msg1.replaceAll("\r\n",BR); // 改行置換 // OKダイアログ  :  : public int ui_dispDialogYN( String msg1, String msg2, int type ) { msg1 = msg1.replaceAll("\r\n",BR); // 改行置換 // YES/NOダイアログ  :  :



ONION software Copyright 1997-2017(c) All rights reserved.