2013-06-06 3 views
0

Я работаю над проектом Android, который позволяет пользователю отображать AlertDialog. Это содержит элементы управления, такие как checkbox textview и две кнопки (увольнение, проверка).Начал работу с AlertDialog?

Итак, я пытаюсь запустить Activity из этого AlertDialog в Activity по желанию, которое кажется невозможным.

public Intent (Context packageContext, Class<?> cls) 

Я уже готов читать много ниток, но кто-нибудь действительно полезное

Есть ли другой способ, чтобы понять это?

EDIT 1:

Код ниже описать мой класс InProgressAlertDialog

public class InProgressAlertDialog extends Dialog implements View.OnClickListener{ 

    public InProgressAlertDialog(Context context) { 

    } 
    public void onClick(View v) { 
     // where I dismiss the AlertDialog or Start an Activity 
    } 

private void initialiseControls(xxxxx) 
{ 
    //where initialize all my controls 
setContentView(R.layout.xxxxxxxxxx); 
linearMain = (LinearLayout)findViewById(R.xxxxxxxxx.yyyyyyyy); 
linearMain.setOrientation(LinearLayout.VERTICAL); 

linearButton = new LinearLayout(_context); 
btnValide = new Button(_context); 
btnValide.setOnClickListener(this); 
linearButton.addView(btnValide); 

btnCancel = new Button(_context); 
btnCancel.setOnClickListener(this); 
linearButton.addView(btnCancel); 
} 

Так как я могу начать активность из этого класса на мой метод OnClick?

ответ

1

намерению предоставляет средство для выполнения позднего выполнения связывания между кодом в различных приложениях.

Его наиболее значимое использование заключается в запуске мероприятий, где его можно рассматривать как клей между действиями.

Предполагая, что ваш AlertDialog принадлежит к деятельности. Вот пример кода, чтобы вернуться к вашей домашней деятельности, например.

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.addCategory(Intent.CATEGORY_HOME); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
getApplicationContext().startActivity(intent); 
+0

Так что я думаю, что это невозможно, если мой AlertDialog не принадлежит к деятельности? – 13KZ

+0

У вас должен быть контекст как минимум. Служба может предоставить вам контекст –

3

попробовать что-то вроде этого:

new AlertDialog.Builder(YourActivity.this) 
.setPositiveButton("Start Activity", new OnClickListener() { 
    public void onClick(DialogInterface arg0, int arg1) { 
     Intent intent = new Intent(YourActivity.this, NewActivity.class); 
     YourActivity.this.startActivity(intent); 
    } 
}) 
.setNegativeButton(android.R.string.cancel, null) 
.create().show(); 
1

попробовать этот

AlertDialog.Builder строитель = новый AlertDialog.Builder (это);

builder.setMessage("YOUR MESSAGE") 
    .setPositiveButton("Yes", dialogClickListener) 
    .setNegativeButton("No", dialogClickListener) 
    .show(); 

DialogInterface.OnClickListener dialogClickListener = новый DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) { 
     switch (which){ 
     case DialogInterface.BUTTON_POSITIVE: 
      Log.d("yes","working");//Yes button clicked 
      startActivity(new Intent(activity.this,MainActivity.class)); 
      break; 

     case DialogInterface.BUTTON_NEGATIVE: 
      dialog.dismiss(); //No button clicked 
      break; 
     } 
    } 
}; 
Смежные вопросы