код повторного использования для деятельности является сбивающим с толку. В обычной ситуации мы можем создать родительскую активность и поместить в нее весь общий метод. например, следуйте за:Как сделать повторное использование кода для андроидных действий?
public class BaseActivity extends Activity{
@Override
protected void doExit() {
showDialog(DIALOG_EXIT_ALTER);
}
protected Dialog onCreateDialog(int id, Bundle args) {
switch (id) {
case DIALOG_EXIT_ALTER:
return new AlertDialog.Builder(BaseUIActivity.this)
.setTitle("Exit?")
.setPositiveButton("Yes",
new DialogInterface.OnClickListener() {
public void onClick(
DialogInterface dialoginterface, int i) {
close();
}
})
.setNeutralButton("No",null).create();
default:
return null;
}
}
protected void close() {
finish();
}
}
затем другие действия продлят BaseActivity будет показывать alertdialog вместо выхода сразу же после нажатия кнопки. Но в андроидном каркасе существует более одной встроенной активности, такой как PreferenceActivity, ListActivity, ActivityGroup и т. Д.
Если моя деятельность расширяет эти действия, тогда он не может использовать общий код, определенный в BaseActivity.because одиночного наследования Java. Так есть ли другой способ рекомендовать повторное использование кода для активности в android?
ActivityHelper будет хорошим решением, вы можете найти подробный пример здесь: http://iosched.googlecode.com/hg/android/src/com/google/android/apps/iosched/util/ActivityHelper.java Изучите весь проект, чтобы увидеть поток http://code.google.com/p/iosched/ –
+1 для ссылки и ActivityHelper - приятное решение. – DouO