Tablelayout - 3 строки x 4 столбца - каждая ячейка с TextView, Editview и Spinner - PullRequest
0 голосов
/ 30 июня 2011

Доброе утро,

Я пытаюсь создать макет, и мне интересно, возможно ли это вообще.

Мне кажется, я хочу TableLayout с 3 строками и 4 столбцами.Затем в каждой ячейке я хочу иметь TextView с EditView под TextView, а затем спиннер под EditView.Цель состоит в том, чтобы пользователь мог ввести значения и затем выбрать единицу измерения, например, дюймы или миллиметры.TextView собирается идентифицировать имя параметра, затем пользователь вводит число и выбирает единицу измерения.

Сначала я попытался поместить три вещи (TextView, EditView и Spinner) друг под другомбез успеха.Я могу получить просмотр текста и редактирование, но когда я добавляю счетчик, он не отображается.Я могу заставить TextView, EditView и две кнопки работать, и я могу заставить работать счетчики, но на всю жизнь я не могу заставить TextView, EditView и Spinner работать вместе, хотя у меня нет ошибок при отладке или запуске.Я пытаюсь это в RelativeView, чтобы я мог сложить 3 вещи вместе.Я думаю, что если я смогу заставить работать RelativeView, я смогу поместить его в табличное представление и получить 3 строки из 4 входных данных или 12 общих параметров.

Имеет ли это смысл?Является ли это правильным подходом для создания способа ввода параметров, причина, по которой я пытаюсь сделать это вместо линейного представления, состоит в том, что я хочу видеть все значения одновременно на красивой сетке, подобной макету.

Я с нетерпением жду помощи, заранее спасибо!

1 Ответ

1 голос
/ 30 июня 2011

Очевидно, я не вхожу в установку уникальных идентификаторов или высоты / ширины макета для всех элементов, но это структура:

<TableLayout>
  <TableRow>
    <LinearLayout
      android:orientation="horizontal">
      <include layout="@layout/form_fields" />
    </LinearLayout>
    <LinearLayout
      android:orientation="horizontal">
      <include layout="@layout/form_fields" />
    </LinearLayout>
    <LinearLayout
      android:orientation="horizontal">
      <include layout="@layout/form_fields" />
    </LinearLayout>
    <LinearLayout
      android:orientation="horizontal">
      <include layout="@layout/form_fields" />
    </LinearLayout>
  </TableRow>
  <TableRow>
    <LinearLayout
      android:orientation="horizontal">
      <include layout="@layout/form_fields" />
    </LinearLayout>
    <LinearLayout
      android:orientation="horizontal">
      <include layout="@layout/form_fields" />
    </LinearLayout>
    <LinearLayout
      android:orientation="horizontal">
      <include layout="@layout/form_fields" />
    </LinearLayout>
    <LinearLayout
      android:orientation="horizontal">
      <include layout="@layout/form_fields" />
    </LinearLayout>
  </TableRow>
  <TableRow>
    <LinearLayout
      android:orientation="horizontal">
      <include layout="@layout/form_fields" />
    </LinearLayout>
    <LinearLayout
      android:orientation="horizontal">
      <include layout="@layout/form_fields" />
    </LinearLayout>
    <LinearLayout
      android:orientation="horizontal">
      <include layout="@layout/form_fields" />
    </LinearLayout>
    <LinearLayout
      android:orientation="horizontal">
      <include layout="@layout/form_fields" />
    </LinearLayout>
  </TableRow>
</TableLayout>

Тогда ваши @ layout / form_fields выглядят так:

<LinearLayout
  android:orientation="vertical">
  <TextView />
  <EditText />
  <Spinner />
</LinearLayout>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...