Мое приложение состоит из нескольких действий.
Активность А - это мое главное меню с некоторыми иконками.
Это действие можно запустить в зависимости от того, какую иконку вы нажимаете: действие B, C, D, E или F.
Это нормально и действительно просто, задание по умолчанию - это занятие А.
Теперь я сделал в настройках опцию, позволяющую пользователям запускать свои любимые действия.
Некоторые пользователи, на самом деле, предпочтут получить, например, непосредственно действие B.
Единственный способ, которым я нашел решение, это сделать это в Деятельности A. Это решение очень уродливо, потому что Мероприятие A всегда запускается и закрывается автоматически:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
settings = PreferenceManager
.getDefaultSharedPreferences(getBaseContext());
final Intent intent = getIntent();
String action = intent.getAction();
if (Intent.ACTION_MAIN.equals(action)) {
switch (Integer.valueOf(settings.getString("Activitypref", "1"))) {
case 2:
Intent i = new Intent(ActivityA.this, ActivityB.class);
finish();
startActivity(i);
break;
case 3:
i = new Intent(ActivityA.this, ActivityC.class);
finish();
startActivity(i);
break;
case 4:
i = new Intent(ActivityA.this, ActivityD.class);
finish();
startActivity(i);
break;
case 5:
i = new Intent(ActivityA.this, ActivityE.class);
finish();
startActivity(i);
break;
case 6:
i = new Intent(ActivityA.this, ActivityF.class);
finish();
startActivity(i);
break;
default:
break;
}
}