Оповещение диалога в методе - Android - PullRequest
0 голосов
/ 17 марта 2012

Я пытаюсь добавить диалоговое окно предупреждения в метод, но я получаю сообщение об ошибке, и я не знаю, почему.Я новичок в Java / Android, так что это может быть что-то простое.Мой следующий код проверяет местоположение пользователя, чтобы убедиться, что оно находится в определенной области, и если это так, он начнет отслеживать пользователя.Если это не в пределах определенного местоположения, я хочу, чтобы всплыло диалоговое окно с предупреждением, чтобы уведомить пользователя, что они не будут отслежены.Я получаю ошибку The constructor AlertDialog.Builder(new LocationListener(){}) is undefined в строке, указанной ниже.

        locListener = new LocationListener() {
        public void onLocationChanged(Location loc) {

            String lat = String.valueOf(loc.getLatitude()); 
            String lon = String.valueOf(loc.getLongitude());

            Double latitude = loc.getLatitude();
            Double longitude = loc.getLongitude();

            if (latitude >= 39.15296 && longitude >= -86.547546 && latitude <= 39.184901 && longitude <= -86.504288) {
                    Log.i("Test", "Yes");                           
                    CityActivity check = new CityActivity();
                    check.checkDataBase(usr);

                    SendLocation task = new SendLocation();
                    task.execute(lat, lon, usr);
            }
            else {
                Log.i("Test", "No");
                AlertDialog alertDialog = new AlertDialog.Builder(this).create(); //ERROR OCCURS HERE
                alertDialog.setTitle("Reset...");
                alertDialog.setMessage("Are you sure?");
                alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
                   public void onClick(DialogInterface dialog, int which) {
                      // here you can add functions
                   }
                });
                alertDialog.setIcon(R.drawable.icon);
                alertDialog.show();
            }

        }

Если у кого-то есть представление о том, что я делаю неправильно и как я могу это исправить, я был бы признателен за помощь.Спасибо

1 Ответ

2 голосов
/ 17 марта 2012
 AlertDialog alertDialog = new AlertDialog.Builder(YourClassName.this).create();

или

AlertDialog alertDialog = new AlertDialog.Builder(getApplicationContext()).create();

Поскольку this ссылается на ваш LocationListener, а не на ваш класс Object

...