2016-12-11 16 views
0

フォーク、アラートダイアログが表示されません。空白の白いページのみが来ています

私はDialog with Ringtoneを表示するダイアログフラグメントを作成しました。しかし、着メロが再生され、ホワイトブランクのページが来ている。

私が間違っているところを案内してください。

AlarmDialog.java

public class AlarmDialogPopUp extends Activity { 

    Ringtone ringtone; 
    Long rowId;Constants.TableTypes fragType; 


    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     final Activity activity = this; 

     Intent intent = getIntent(); 
     rowId = intent.getExtras().getLong(DatabaseHandler1.KEY_ID); 
     fragType = (Constants.TableTypes) intent.getExtras().get(DatabaseHandler1.fragmentidenifier); 


     // Get the alarm ID from the intent extra data 

     Uri uri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM); 
     ringtone = RingtoneManager.getRingtone(AlarmDialogPopUp.this, uri); 
     ringtone.play(); 

     } 
     @Override 
     protected Dialog onCreateDialog (int id) 
     { 
      super.onCreateDialog(id); 

      // Build the dialog 
      final AlertDialog.Builder alert = new AlertDialog.Builder(this); 

      alert.setTitle("ALARM REMINDER"); 
      alert.setMessage("Check Your Reminder"); 
      alert.setCancelable(false); 

      alert.setPositiveButton("Dismiss", new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int whichButton) { 
        ringtone.stop(); 
        // Constants.TableTypes fragType = (Constants.TableTypes) intent.getExtras().get(DatabaseHandler1.fragmentidenifier) 

        Intent intent = new Intent(AlarmDialogPopUp.this, PostClickNotificationActivity.class); 
        //intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
        //getApplicationContext().startActivity(notificationIntent); 
        intent.putExtra(DatabaseHandler1.KEY_ID, rowId); 
        intent.putExtra(DatabaseHandler1.fragmentidenifier, fragType); 
        startActivity(intent); 

        AlarmDialogPopUp.this.finish(); 

       } 


      }); 

      // Create and return the dialog 
      AlertDialog dlg = alert.create(); 
      //dlg.show(); 
      dlg.show(); 
      return dlg; 
     } 
    } 

私は、メソッドを作成し、他の記事で述べたようにshow()すべてを試してみました。しかし、それは動作しません。それは鳴り、空白のページが来る。

答えて

1

は間違ってこの

public class AlarmDialogPopUp extends Activity { 

    Ringtone ringtone; 
    Long rowId;Constants.TableTypes fragType; 


    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     final Activity activity = this; 

     Intent intent = getIntent(); 
     rowId = intent.getExtras().getLong(DatabaseHandler1.KEY_ID); 
     fragType = (Constants.TableTypes) intent.getExtras().get(DatabaseHandler1.fragmentidenifier); 


     // Get the alarm ID from the intent extra data 

     Uri uri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM); 
     ringtone = RingtoneManager.getRingtone(AlarmDialogPopUp.this, uri); 
     ringtone.play(); 
     displayDialog(); 
     } 

     public void displayDialog() 
     { 

      // Build the dialog 
      final AlertDialog.Builder alert = new AlertDialog.Builder(AlarmDialogPopUp.this); 

      alert.setTitle("ALARM REMINDER"); 
      alert.setMessage("Check Your Reminder"); 
      alert.setCancelable(false); 

      alert.setPositiveButton("Dismiss", new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int whichButton) { 
        ringtone.stop(); 
        // Constants.TableTypes fragType = (Constants.TableTypes) intent.getExtras().get(DatabaseHandler1.fragmentidenifier) 

        Intent intent = new Intent(AlarmDialogPopUp.this, PostClickNotificationActivity.class); 
        //intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
        //getApplicationContext().startActivity(notificationIntent); 
        intent.putExtra(DatabaseHandler1.KEY_ID, rowId); 
        intent.putExtra(DatabaseHandler1.fragmentidenifier, fragType); 
        startActivity(intent); 

        finish(); 

       } 


      }); 

      alert.show(); 

     } 
    } 
+0

どうもありがとうございました。それは働いた – SOURAV

1

dlg.show(); ... That'sようなあなたのonCreateメソッドであなたのダイアログを表示します。通常、活動の方法はshowDialog(int)です。しかし、これは廃止され、独自のダイアログを作成したり、onCreateDialog()dlg.show()を削除し、onCreate()showDialog(0)を求めるDialogFragment

を使用する必要があります。

Using DialogFragment

example of custom dialog

+0

ありがとう。わかった 。 – SOURAV

関連する問題