Я на 100% уверен, что это будет один из тех вопросов новичка, но здесь он идет ...
Есть ли способ, которым я могу написать метод в одном упражнении и иметь возможность доступаэто от других?
Пример: у меня есть шесть активностей в моем приложении, каждое со своим собственным menu.xml, потому что опции, доступные для каждого, должны отличаться, и у меня есть эти меню и пункты меню, настроенные как показано:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.calculator_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
//Handle item selection
switch (item.getItemId()) {
case R.id.menuItem_calculator_Help:
helpDialogGo();
return true;
case R.id.menuItem_calculator_Settings:
//settingsActivityGo();
return true;
case R.id.menuItem_calculator_Share:
shareGo();
return true;
case android.R.id.home:
// app icon in Action Bar clicked; go home
Intent uptohome = new Intent(this, Main.class);
uptohome.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(uptohome);
return true;
default:
return super.onOptionsItemSelected(item);
}
}
Примером одного из этих методов является:
private void helpDialogGo() {
Toast.makeText(this, "help", Toast.LENGTH_LONG).show();
AlertDialog.Builder alt_bld = new AlertDialog.Builder(this);
alt_bld.setMessage("Sorry, no help has been written since this application is still in development. This is a prerelease version.")
.setCancelable(false)
.setPositiveButton("Cool", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// Action for 'Yes' Button
dialog.cancel();
}
})
.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// Action for 'NO' Button
dialog.cancel();
}
});
AlertDialog alert = alt_bld.create();
// Title for AlertDialog
alert.setTitle("Pixel Help");
// Icon for AlertDialog
alert.setIcon(R.drawable.question);
alert.show();
}
Так есть ли способ использовать этот пользовательский метод совместно для всех действий и запускать его, когда кнопканажимается в каждом из них, чтобы избежать репликации большого количества кода в моем приложении?
И если так, есть ли какие-нибудь пробоины, на которые я могу попасть?(Некоторые пункты меню будут вызывать диалоги, другие приведут пользователя к новому занятию)