У меня есть два действия A и B. B - прозрачный проход через активность, и A видно. Я хочу убить B, нажав кнопку A.
Вот что я пробовал до сих пор:
B obj=new B();
obj.finish();
Я создал объект B и попытался его убить. Это не сработало.
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("keep", true);
startActivity(intent);
То, что должен сделать этот код, - это очистить верхнюю часть активности, которая является B и снова называть B, за исключением того, что я передаю такое значение, чтобы B убил себя через несколько секунд.
По какой-то причине это только сбивало больше случаев активности. Или, по крайней мере, я думаю, что произошло, потому что экран стал пиксельным из-за многих прозрачных действий.
Вот мой манифест:
<activity
android:name="com.xxx.xxx.B"
android:excludeFromRecents="true"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:clearTaskOnLaunch="true" >
</activity>
Что мне нужно сделать, чтобы, когда я нажимаю кнопку, когда активность отображается, а второй раз ее убивает? Очевидно, что часть создания позаботилась. Моя активность B всплывает, я хочу убить ее сейчас, когда B находится сверху.
ИЗМЕНИТЬ
Я попробовал это с checkbox, вот код:
enable.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
finishActivity(0);
Intent intent = new Intent(A.this, B.class);
if (enable.isChecked()) {
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("keep", true);
intent.putExtra("value", 10);
startActivityForResult(intent, 0);
}
else
{
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("keep", false);
startActivityForResult(intent, 0);
}
}
});
Когда включена опция enable, вызывается действие, которое работает нормально. Но они продолжают накапливаться. Это не похоже на A- > B- > A- > B, когда я проверяю и снимаю флажок checkBox. Это A- > B- > BB- > BBB