GridView с TextView в LinearLayout - PullRequest
       1

GridView с TextView в LinearLayout

0 голосов
/ 28 ноября 2010

Я пытаюсь разработать небольшое приложение для Android, которое вычисляет концентрацию пользователей.Моя идея состоит в том, чтобы показать матрицу изображений, где пользователь вынужден выбирать данные изображения в течение определенного времени и вычислять, насколько точным был пользователь.

Проблема в том, что я не знаю, как разработать макет, который сочетает в себе TextViews и GridViews.

Я пытался сделать подобный пользовательский интерфейс, но мне это не удалось.

Я подумал, что достаточно поместить TextView1 в LinearLayout, затем GridView1, TextView2, GridView2 и кнопку.Я пробовал больше комбинаций, которые привели к моей неудаче.

Не могли бы вы подсказать, как создать этот макет, пожалуйста?

Это мой макет:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/root"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

<TextView android:text="@+id/TextView01" 
        android:id="@+id/TextView01" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content">
        </TextView>

<LinearLayout
  android:orientation="horizontal"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content">

    <ImageView android:id="@+id/ImageView01" 
    android:layout_width="wrap_content" android:layout_height="wrap_content">
    </ImageView>

    <ImageView android:id="@+id/ImageView02" 
    android:layout_width="wrap_content" android:layout_height="wrap_content">
    </ImageView>

    <ImageView android:id="@+id/ImageView03" 
    android:layout_width="wrap_content" android:layout_height="wrap_content">
    </ImageView>
</LinearLayout>

<TextView android:text="@+id/TextView02" 
        android:id="@+id/TextView02" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content">
</TextView>
<LinearLayout
  android:orientation="horizontal"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:layout_weight="0.4">

    <GridView android:id="@+id/GridView01" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content"
        android:numColumns="auto_fit"
        android:columnWidth="25px"
        android:stretchMode="none">
    </GridView>
</LinearLayout>
<LinearLayout android:id="@+id/LinearLayout01" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content">

          <Button android:text="@+id/Button01" 
                  android:id="@+id/Button01" 
                  android:layout_width="wrap_content" 
                  android:layout_height="wrap_content"></Button>
          <Button android:text="@+id/Button02" 
                  android:id="@+id/Button02" 
                  android:layout_width="wrap_content" 
                  android:layout_height="wrap_content"></Button>
</LinearLayout>

Мне удалосьчтобы в сетке было больше столбцов и чтобы в одной строке было как можно больше изображений.Но я не могу установить высоту строки, только ширину столбца.Изображения в gridview увеличены, и я не вижу способа установить их в исходном размере.

Ответы [ 2 ]

0 голосов
/ 28 ноября 2010

Я рекомендую потратить немного времени на чтение Common Layout Objects . Еще один хороший ресурс - Здравствуйте, Views , коллекция многих хороших руководств по использованию различных макетов.

0 голосов
/ 28 ноября 2010

Я бы посоветовал вложить все в линейный макет, затем поставить 3 линейных макета

первый будет иметь верхнюю полосу (текстовое представление кнопки и т. Д.), Второй будет иметь вид сетки. Третий будет иметь нижнийпанель (просмотр текста кнопки и т. д.) Вы также можете поместить в родительский элемент заливки линейные макеты как по высоте, так и по ширине, а также задать вес макета с первого 1 до второго 0,5 и третьего 1, и он будет помещен в процент от высоты, которую вы нам показываете вкартинка ... Попробуй и скажи нам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...