2014-01-06 45 views
-1

我試圖使用parse.com在我的Android應用程序,如何獲取上下文在* **代碼AlertDialog.Builder(* ** *的地方* **)?我嘗試使用getApplicationcontext哪些不起作用。可以在android中有任何經驗的人幫助我這方面?如何獲取標記位置的上下文?

mSignInButton.setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(View arg0) { 
       mVibrator.vibrate(100); 

       //Checking for internet connection... 
       ConnectivityManager cm = 
          (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 
         NetworkInfo netInfo = cm.getActiveNetworkInfo(); 
         //internet connection inactive... show alert... 
         if (!(netInfo != null && netInfo.isConnectedOrConnecting())) { 
          AlertDialog.Builder adb = new AlertDialog.Builder(arg0.getContext()); 
          adb.setTitle("ALERT"); 
          adb.setMessage("Please turn on Internet."); 
          adb.setPositiveButton("Ok", new DialogInterface.OnClickListener() 
          { 
           public void onClick(DialogInterface dialog, int id) 
           { 
           // Action for 'Ok' Button 
           } 
          }); 
          adb.setNegativeButton("Cancel", new DialogInterface.OnClickListener() 
          { 
              public void onClick(DialogInterface dialog, int id) 
                  { 
                  // Action for 'Cancel' Button 
                  dialog.cancel(); 
              } 
          }); 
          adb.setIcon(R.drawable.ic_launcher); 
          adb.show(); 
         }else{       
          ParseQuery<ParseObject> query = ParseQuery.getQuery("Admin"); 
          query.whereEqualTo("password", mUserNameEditText.getText().toString()); 
          query.whereEqualTo("userName", mPasswordEditText.getText().toString()); 

          query.countInBackground(new CountCallback() { 
            public void done(int count, ParseException e) { 
            if (e == null) { 
             // The count request succeeded. Log the count 
             Log.d("test", "Sean has played " + count + " games"); 
             if(count>0){ 
              // save the login status... loggedIn/notloggedIn... 
              SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(LoginScreenActivity.this); 
              SharedPreferences.Editor editor  = sharedPreferences.edit(); 
              editor.putBoolean("isLoggedIn", true); 
              editor.commit(); 

              // if user name password is correct, navigate to next activity... 
              Intent intent = new Intent(LoginScreenActivity.this,OptionScreenActivity.class); 
              intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
              startActivityForResult(intent, 0); 
              overridePendingTransition(R.layout.fade_in, R.layout.fade_out); 
             }else{ 
              AlertDialog.Builder adb = new AlertDialog.Builder(*********************); 
              adb.setTitle("ALERT"); 
              adb.setMessage("Wrong username or password."); 
              adb.setPositiveButton("Ok", new DialogInterface.OnClickListener() 
              { 
               public void onClick(DialogInterface dialog, int id) 
               { 
               // Action for 'Ok' Button 
               } 
              }); 
              adb.setNegativeButton("Cancel", new DialogInterface.OnClickListener() 
              { 
                  public void onClick(DialogInterface dialog, int id) 
                      { 
                      // Action for 'Cancel' Button 
                      dialog.cancel(); 
                  } 
              }); 
              adb.setIcon(R.drawable.ic_launcher); 
              adb.show(); 
             } 

            } else { 
             // The request failed 

            } 
            } 
           });             
+0

請清楚explaing您的問題。 「如何在5星級的地方獲得背景」是什麼意思? –

+0

你的問題不清楚。我可以用'getApplicationContext()'試一試。 – GrIsHu

+0

請注意,我編輯了我的問題 – user3164437

回答

0

試試如下:

AlertDialog.Builder adb = new AlertDialog.Builder(getApplicationContext()); 

OR

 AlertDialog.Builder adb = new AlertDialog.Builder(<YourActivity>.this);