проблема макета Android - разделение экрана на два макета (внутри вкладки) - PullRequest
0 голосов
/ 28 сентября 2011

У меня есть tabhost и в 1 вкладке я хочу сделать следующее: 1. Вверху - поисковый текст редактирования. 2. Под ним какое-то текстовое поле. Когда пользователь нажимает кнопку поиска - мне нужно, чтобы это текстовое поле превратилось в список на остальной части экрана (под поиском).

На самом деле мне нужно разделить экран на 2 части.

Ответы [ 2 ]

0 голосов
/ 28 сентября 2011

Добавьте общий макет в хосте вкладок в качестве родительского макета и добавьте или удалите представление как вам нравится.

0 голосов
/ 28 сентября 2011

Существует несколько способов, но что-то вроде этого является довольно простым и должно работать. Если вы используете ListActivity , просто укажите изображение как id / empty и представление списка как id / list. Затем, когда ваш список пуст, пользователи видят ImageView. Когда вы его заполните, он автоматически переключится.

<LinearLayout ...
  android:orientation="vertical">

  <LinearLayout ...>

    <EditText .../>

    <ImageButton .../>

  </LinearLayout>

  <ImageView ...
     android:id="@android:id/empty"/>

  <ListView ...
     android:id="@android:id/list"/>

</LinearLayout>

Если вы не можете использовать ListActivity, просто сделайте это самостоятельно (например, в прослушивателе щелчка для кнопки):

ImageView image = findViewById(R.id.YOUR-IMAGEVIEW);
image.setVisibility(View.GONE);

ListView list = findViewById(R.id.YOUR-LISTVIEW);
list.setVisibility(View.VISIBLE);

И обязательно укажите android:visibility="gone" в своем списке в XML, чтобы он был изначально скрыт.

...