2011-10-20 6 views
0

을 확인합니다.Android; Android 개발에 새로운 앱 종료

전화 번호로 전화를 걸면 응용 프로그램이 종료되고 다이얼러가 열립니다.

여기까지 다 괜찮습니다. 하지만 이제는 사용자가 버튼을 클릭 할 때 확인 대화 상자를 추가하여 통화가 응용 프로그램을 종료 할 것이라고 경고하고 싶습니다. ("전화가 응용 프로그램을 종료합니다. 확실합니까? Canel")

나는 주변을 둘러 보았지만 명확한 예제를 찾지 못했습니다. 어떤 도움을 주시면 감사하겠습니다.

final String phoneNumber; 
phoneNumber = "5555555555"; 

ImageButton callButton = (ImageButton)findViewById(R.id.btnCall); 

callButton.setOnClickListener(new OnClickListener(){ 
    public void onClick(View v) { 
     try { 
      Intent callIntent = new Intent(Intent.ACTION_DIAL); 
      callIntent.setData(Uri.parse("tel:"+phoneNumber)); 
      startActivity(callIntent); 
     } catch (ActivityNotFoundException activityException) { 
      Log.e("Calling a Phone Number", "Call failed", activityException); 
     } 
    } 
}); 

답변

4

이것은 당신이 찾고있는 무엇을 수행해야합니다

callButton.setOnClickListener(new OnClickListener(){ 
     public void onClick(View v) { 
      OnClickListener listener = new OnClickListener(){ 
       @Override 
       public void onClick(DialogInterface dialog, int which) { 
        if(which == Dialog.BUTTON_POSITIVE) 
        { 
         try { 
          Intent callIntent = new Intent(Intent.ACTION_DIAL); 
          callIntent.setData(Uri.parse("tel:"+phoneNumber)); 
          startActivity(callIntent); 
         } catch (ActivityNotFoundException activityException) { 
          Log.e("Calling a Phone Number", "Call failed", activityException); 
         } 
        } 
       }   
      }; 

      new AlertDialog.Builder(v.getContext()) 
      .setMessage("Are you sure you want to leave the application?") 
      .setPositiveButton("Yes", listener) 
      .setNegativeButton("No", listener) 
      .show(); 
     } 
    } 

편집은 당신이 경고 대화 상자를 사용할 수 있습니다

+0

http://developer.android.com/guide/topics/ui/dialogs.html#AlertDialog이 도움을 주셔서 대단히 감사합니다. – JFFF

2

v.getContext()와 컨텍스트를 교체하는 예와 아니오 버튼과 함께 제공 :

AlertDialog.Builder alert = new AlertDialog.Builder(this); 

alert.setTitle("Title"); 
alert.setMessage("Message"); 

// Set an EditText view to get user input 
final EditText input = new EditText(this); 
alert.setView(input); 

alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() { 
public void onClick(DialogInterface dialog, int whichButton) { 
    String value = input.getText(); 
    // Do something with value! 
    } 
}); 

alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { 
    public void onClick(DialogInterface dialog, int whichButton) { 
    // Canceled. 
    } 
}); 

alert.show(); 

try/catch에 startActivity(callIntent); 뒤에 삽입 할 수 있습니다.

1

당신은에 AlertDialog.Builder를 사용해야합니다