Как отобразить 2 вида в 1 активности (андроид)?

Предположим, у меня открыт веб-просмотр:

public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); main_webv = (WebView) findViewById(R.id.mainwebview); main_webv.setWebViewClient(new HelloWebViewClient()); main_webv.getSettings().setJavaScriptEnabled(true); main_webv.getSettings().setSupportZoom(false); main_webv.addJavascriptInterface(new HelloJavascriptInterface(),"hello"); main_webv.setWebChromeClient(new HelloWebChromeClient()); main_webv.loadUrl(SPLASH); main_webv.setVisibility( 4 ); setContentView(R.layout.main_list); main_listv = (ListView) findViewById(R.id.mainlistview); } 

Я просто хочу создать ListView над этим веб-просмотром (прикрывая его … но sitll, позволяющий запустить веб-просмотр). Я мог включать и выключать виды. Благодарю.

    Вы можете использовать FrameLayout ; Таким образом оба представления будут расположены поверх другого. Затем вы можете переключить их видимость с помощью View.setVisibility(..) .

    [EDIT: ADDED CODE]

    Это мой макет XML (weblister.xml):

     <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ListView android:id="@+id/list_view" android:layout_width="fill_parent" android:layout_height="fill_parent" /> <WebView android:id="@+id/webview" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </FrameLayout> 

    Теперь я создаю Activity, который будет иметь как ListView, так и WebView в его иерархии представлений, но только один из них будет видимым:

     public class WebAct extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.weblister); //setup listview ListView listView = (ListView) findViewById(R.id.list_view); listView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, new String[]{"One","Two"}){ }); // setup web view WebView webView = (WebView) findViewById(R.id.webview); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setSupportZoom(false); webView.loadUrl("http://www.google.com"); // set visibility listView.setVisibility(View.INVISIBLE); webView.setVisibility(View.VISIBLE); } } 

    Примечание . Код может быть неполным, но я надеюсь, что он передаст мою точку зрения.

    Да, setVisibility, вероятно, поможет вам, если вы хотите программным образом переключать Views на (View.VISIBLE) и выключить (VIEW.GONE).

    Относительно вашего комментария к Samuhs ответ: на Java у вас нет множественного наследования. Но ListActivity наследует от Activity, поэтому ListActivity практически одинаково (и больше) как Activity.

    Кроме того, вам не нужно использовать ListActivity для отображения ListViews, он просто предоставляет некоторые удобства для обработки действий на основе списка, поскольку они настолько распространены.

    Какова именно ошибка, которую вы получаете?

    Intereting Posts
    Изменение местоположения SDK в Android Studio: пробелы в местоположении каталога Получение координат GPS быстрее программно без Интернета, но с использованием сетевого провайдера и мобильного GPS Как реализовать searchview в действии (панели действий), когда listview существует во фрагменте Удаление библиотеки Android EditText внутри потерянного фокуса ListView Jackson ObjectMapper Конфедирующие определения сеттера (Android.Graphics.Bitmap) R.string.value отображается как число Где я могу найти ресурсы и образцы кода для использования сигнала с акселерометра? Как сохранить узлы XML, которые не привязаны к объекту при использовании SAX для синтаксического анализа Преобразует ли proguard все перечисления в int или должен быть настроен для этого Как узнать, запущена ли деятельность без перехода? Можете ли вы установить цвет фона на кнопке переключения, не закрывая переключатель? Название андроида не будет отображаться на панели инструментов Как получить направление на Android (например, Север, Запад) Удалять базу данных sqlite при обновлении новой версии приложения