Я разрабатываю новое приложение, в котором я использую представление вкладки в качестве родительского макета. Я использую TabHost для отображения 3 вкладок в моем приложении. Каждая из этих вкладок имеет отдельную активность, содержащую ListView. Это работает нормально. Когда вы нажимаете на элемент в ListView, он в настоящее время загружает совершенно новый полнофункциональный экран Activity, оставив TabHost. Я хотел бы загрузить эти действия в TabHost. Я хочу сохранить tabview после вызова других действий из списка.Как начать новую активность из активности списка в пределах табуляции
Благодарим вас обоих за ваш ответ. Вот мой код, где мне нужна ваша помощь.
################ HelloTabWidget// Этот класс отображает вкладку с вкладкой 3 - клиентом, компанией и городом.
public class HelloTabWidget extends TabActivity {
//public class HelloTabWidget extends ActivityGroup {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Resources res = getResources();
TabHost tabHost = getTabHost();
TabHost.TabSpec spec;
Intent intent;
intent = new Intent().setClass(this, CustomerTabView.class);
spec = tabHost
.newTabSpec("Customer")
.setIndicator("Customer",
res.getDrawable(R.drawable.ic_tab_Customer))
.setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, CompanyTabView.class);
spec = tabHost
.newTabSpec("Company")
.setIndicator("Company",
res.getDrawable(R.drawable.ic_tab_Company))
.setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, CityTabView.class);
spec = tabHost
.newTabSpec("City")
.setIndicator("City", res.getDrawable(R.drawable.ic_tab_City))
.setContent(intent);
tabHost.addTab(spec);
tabHost.setCurrentTab(0);
}
}
################ CustomerTabView
// Этот вид отображает список классов имен клиентов. При щелчке по любому элементу в списке он должен открыть страницу с подробными сведениями о табло.
public class CustomerTabView extends ListActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String[] category = getResources().getStringArray(
R.array.category_array);
setListAdapter(new ArrayAdapter<String>(this, R.drawable.list_items,
category));
ListView lv = getListView();
lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
//Need this logic where I can retain the tab view and call new activity class for customerdetails view.
Intent intent;
intent = new Intent(CustomerTabView.this,
C_DetailActivity.class);
startActivity(intent);
finish();
}
});
}
}
################ C_DetailActivity
При клике любого элемента из customertabview, этот класс активности получает вызов, на который показывает детали заказчика.
public class C_DetailActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView textview = new TextView(this);
textview.setText("This is the Customer Details view");
setContentView(textview);
}
}
После вызова класса C_DetailActivity исчезает вид табуляции. Я хочу сохранить представление главной вкладки. Так нужна эта логика, где я могу сохранить вид вкладок и вызвать новый класс активности для customerdetails просмотра
Сохраните это. Я бы этого не сделал. – Blundell
Укажите, пожалуйста, код. Это должно быть простой реализацией. –
Что еще вам нужно? У вас есть намерение? –