BACKハードキーを押すと、ページのズーム以外、何もできなくなってしまう。
ダイアログ生成時の Builder で、setCancelable(false) を実行しておくと解決する。
例)
public class CustomWebChromeClient extends WebChromeClient{
private Context context;
public CustomWebChromeClient(Context context){
this.context = context;
}
@Override
public boolean onJsPrompt(WebView view,String url,String message,String defaultValue,final JsPromptResult result){
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View layout = inflater.inflate(<R.layout.jsprompt,null);
AlertDialog.Builder builder = new AlertDialog.Builder(context);
final AlertDialog dialog = builder.setCancelable(false).setView(layout).create();
*1;
}
});
dialog.setButton2("cancel",new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface _dialog,int which){
result.cancel();
}
});
dialog.show();
return true;
}
*1:TextView)layout.findViewById(R.id.promptTextView).setText(message);
final EditText edit = (EditText)layout.findViewById(R.id.promptEditText);
edit.setText(defaultValue);
dialog.setButton("OK",new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface _dialog,int which){
result.confirm(edit.getText().toString(