Java 在退出android studio之前确认对话框
大家好,我的主活动XML上有一个退出按钮,但是我需要它,所以当用户单击它时,它会打开一个对话框确认退出,如果是,则退出。如果没有,就把它们拿回去 这是我的代码,到目前为止,没有任何这一部分,但我不知道从哪里开始Java 在退出android studio之前确认对话框,java,android,Java,Android,大家好,我的主活动XML上有一个退出按钮,但是我需要它,所以当用户单击它时,它会打开一个对话框确认退出,如果是,则退出。如果没有,就把它们拿回去 这是我的代码,到目前为止,没有任何这一部分,但我不知道从哪里开始 package com.tradingsoftwarelimited.labelprinter10; import android.app.Activity; import android.app.AlertDialog; import android.content.DialogIn
package com.tradingsoftwarelimited.labelprinter10;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Sets Edit and Data Button to hidden
Button hiddenButton = (Button) findViewById(R.id.editButton);
hiddenButton.setVisibility(View.INVISIBLE);
Button hiddenButton1 = (Button) findViewById(R.id.dataButton);
hiddenButton1.setVisibility(View.INVISIBLE);
//Acknolages settings button
Button showButton = (Button) findViewById(R.id.settingsButton);
//if clicked
showButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//If clicked show Edit and data Button
Button showButton = (Button) (findViewById(R.id.editButton));
showButton.setVisibility(View.VISIBLE);
Button showButton1 = (Button) (findViewById(R.id.dataButton));
showButton1.setVisibility(View.VISIBLE);
}
});
}
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getSupportActionBar().hide();
return true;
}
};
;
在中调用此方法
@Override
public void onBackPressed() {
super.onBackPressed();
confirmDialog(getApplicationContext());
}
在您的活动中
尝试以下方法:
Button exitButton = (Button) findViewById(R.id.exit_button);
exitButton..setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
AlertDialog.Builder builde = new AlertDialog.Builder(this);
builde.setMessage(
"Want Exit?")
.setPositiveButton("Yes ", dialogClickListeners)
.setNegativeButton("Cancel", dialogClickListeners).show();
}
});
DialogInterface.OnClickListener dialogClickListeners = new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{
switch (which)
{
case DialogInterface.BUTTON_POSITIVE:
finish();
break;
case DialogInterface.BUTTON_NEGATIVE:
break;
}
}
};
您可以在主活动is onBackPressed()中使用直接方法,因此当用户按下Backpressed()时,您可以用两个按钮显示一个警报1.退出,2.取消,如果用户按下Exit关闭应用程序,则关闭其他操作。谢谢。我如何使我的按钮与此链接?谢谢,我如何使我的按钮与此链接?它还表示{context}无法解析?@StevenMarshall将代码片段简单地放在您的活动classIve done中,现在它表示无法解析confirmDialog方法,并且上下文仍然无法解析
Button exitButton = (Button) findViewById(R.id.exit_button);
exitButton..setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
AlertDialog.Builder builde = new AlertDialog.Builder(this);
builde.setMessage(
"Want Exit?")
.setPositiveButton("Yes ", dialogClickListeners)
.setNegativeButton("Cancel", dialogClickListeners).show();
}
});
DialogInterface.OnClickListener dialogClickListeners = new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{
switch (which)
{
case DialogInterface.BUTTON_POSITIVE:
finish();
break;
case DialogInterface.BUTTON_NEGATIVE:
break;
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Invite = (ImageButton) findViewById(R.id.imageButton5);
final DialogInterface.OnClickListener dialogClickListeners = new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case DialogInterface.BUTTON_POSITIVE:
finish();
break;
case DialogInterface.BUTTON_NEGATIVE:
break;
}
}
};
Invite.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
AlertDialog.Builder builde = new AlertDialog.Builder(MainActivity.this);
builde.setMessage(
"Want Exit?")
.setPositiveButton("Yes ", dialogClickListeners)
.setNegativeButton("Cancel", dialogClickListeners).show();
}
});
}