У меня есть приложение для Android, в котором запущен WebView, который загружает определенную страницу, также являющуюся частью приложения. Я хочу использовать Android DatePicker, чтобы получить дату от пользователя и установить значение для ввода внутри страницы в WebView.
DatePickerDialog открывается, когда пользователь щелкает ввод, но когда я получаю возврат выбора даты, я не могу запустить метод loadUrl, чтобы установить значение во вводе, это дает мне ошибку, и приложение аварийно завершает работу.
Немного кода (это тестовый код, так что не обращайте внимания, если он немного вырван из контекста):
Класс, который я предоставляю WebView:
public class webViewInterface {
public void openDatePicker(){
showDialog(0);
}
}
Функция JavaScript на странице, вызываемая по щелчку ввода:
function openDatePicker() {
if (objAndroid != null) objAndroid.openDatePicker();
}
Прослушиватель для выбора даты
private DatePickerDialog.OnDateSetListener mDateSetListener =
new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
mWebView.loadUrl("javascript:setReturnDate();");
}
};
Функция JavaScript, которая устанавливает значение на входе
function setReturnDate() {
document.getElementById('txtAgency').value = '9999';
}
Любые идеи?
Заранее спасибо.
adb logcat
, DDMS или перспективу DDMS в Eclipse, чтобы изучить LogCat и просмотреть трассировку стека, связанную с вашей ошибкой. - person CommonsWare   schedule 08.02.2011