2011-08-07 5 views
1

계정 확인을 클릭 할 때 계정 정보가 누락되면 경고 대화 상자가 표시됩니다. Eclipse에서 오류가 발생합니다. new AlertDialog.Builder(this)the constructor AlertDialog.Builder(new View OnClickListener(){}) is undefined입니다. 코드를 작업의 onCreate에 추가하면 코드가 제대로 작동합니다. this 당신이 아니라 부모 활동 (checkButton.setOnClickListener(new OnClickListener(){에 대한 호출)을 생성하고있는 OnClickListener 때문에Android AlertDialog 생성자가 정의되지 않았습니다.

checkButton.setOnClickListener(new OnClickListener() { 
     public void onClick(View Arg0){ 
      String AccNum = null, Store = null; 
      final SharedPreferences settings = getSharedPreferences(CHECK_PREFERENCES, MODE_PRIVATE); 

      if (settings.contains("Account") == true){ 
       AccNum = (settings.getString("Account", "default")); 
       Store = (settings.getString("Store", "default")); 
      } 
      if (AccNum.length() < 7) { 
       AlertDialog alert = new AlertDialog.Builder(this).create(); 
       alert.setTitle("Account Information missing!"); 
       alert.setMessage("Enter now? "); 

       alert.setButton("Yes", new DialogInterface.OnClickListener() { 
         public void onClick(DialogInterface dialog, int whichButton) { 
          startActivity(new Intent(CheckOrder.this, GoToSetup.class)); 
         } 
       }); 
       alert.setButton2("No", new DialogInterface.OnClickListener() { 
         public void onClick(DialogInterface dialog, int whichButton) { 
          return; 
         } 
       }); 
       alert.show(); 

      } 
     } 
}); 

답변

17

오류가 발생합니다. 액티비티 클래스는 ParentActivity을 경우,이 시도 :

AlertDialog alert = new AlertDialog.Builder(ParentActivity.this).create(); 
+0

감사합니다. C++ 및 Delphi에서오고 있습니다. 여기에 학습 곡선이 있습니다. OnClickListener 외부에서 생성하고 필요할 경우 프로 시저를 호출 할 수 있습니까? 나는 시도했다. 그러나 나에게는 내가 학급의 밖에서 전화 할 수있는 taht에 관해 무엇인가 나에게 이야기하고있는 또 다른 오류가 있었다. –

+0

활동에 함수를 작성하여 호출하면 해당 문제를 해결할 수 있습니다. – Femi

2

클래스가 필요로 활동을 확장, 같은

내가 같은 문제가 없었다
public class MyClass extends Activity{ 
// ... Your code 
} 
1

한다. 이거 한번 해봐.

AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.this); 
+0

답안에 몇 가지 세부 사항을 기재하십시오. 감사 :) –

관련 문제