Không chắc nếu đây là phương pháp mà nên được thực hiện, nhưng bạn sẽ có thể làm những gì tôi nghĩ rằng bạn đang yêu cầu. Nếu vì lý do nào đó, đây là những gì bạn muốn đạt được.
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("Do you want to clean?")
.setPositiveButton("Yes", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int id)
{
dialog.dismiss();
((ActivityName) appContext).onResume();
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int id)
{
dialog.dismiss();
}
});
builder.create().show();
}
Bạn sẽ thực sự muốn được gọi chức năng làm sạch của bạn thay bất cứ điều gì giống như một cuộc gọi vòng đời trên là một thành công trong khi làm gì trên một thất bại.
Một cách khác để tiếp cận điều này là đưa hoạt động hiện tại trở lại mặt trước bằng cờ.
Intent intent = new Intent(this, CurrentlyRunningActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);
Mà cũng sẽ cung cấp cách gọi cho hoạt động chính của bạn mà không trực tiếp tham chiếu cuộc gọi onResume(), như được chỉ ra không phải là cách tiếp cận phù hợp; tuy nhiên, tôi muốn trả lời trực tiếp câu hỏi khi được hỏi.
Nguồn
2013-04-11 14:50:38
nếu bạn muốn phát hiện khi người dùng đã làm điều gì đó bạn có thể sử dụng boolean sẽ sai khi bắt đầu và đúng trên nhấp chuột tích cực của nút? –