Да, вы реализуете группу действий, которая будет контейнером других ваших действий.Когда пользователь нажимает одну из кнопок, вы получаете ссылку на LocalActivityManager, используете ее для запуска и встраиваете внутреннюю активность.Примерно так:
LocalActivityManager mgr = getLocalActivityManager();
Intent i = new Intent(this, SomeActivity.class);
Window w = mgr.startActivity("unique_per_activity_string", i);
View wd = w != null ? w.getDecorView() : null;
if(wd != null) {
mSomeContainer.addView(wd);
}
Обратите внимание, использование этого метода может быть довольно сложным, потому что, если фокус не является правильным, нажатие аппаратных кнопок (например, кнопки меню) будет вызывать только события в ActivityGroup вместо этоговнутренней деятельности.Вы должны найти способ сфокусировать внутреннюю активность после того, как добавите ее в представление контейнера, и в этот момент во внутренней активности произойдет четное и распространится на действие контейнера.
Это можно сделать, ясделал это ... и это работает.Это немного сложнее, чем я думаю.
Во всяком случае, я получил большую часть этой информации, посмотрев код TabHost, который можно найти здесь