Основной вопрос по макету Android - PullRequest
0 голосов
/ 11 мая 2010

Я новичок в Android, но я работал над учебниками. Все еще пытался разобраться в макетах в мире, отличном от html, и задавался вопросом, как добиться следующего ...

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

2) Я хотел бы разместить изображение и кнопку под ним по центру экрана.

3) Когда пользователь нажимает кнопку, я хотел бы начать новое действие, и, вероятно, мне нужно что-то сделать с текущим действием, чтобы пользователь мог использовать кнопку назад, чтобы вернуться к нему.

Извините за вопрос новичка.

Jon

1 Ответ

2 голосов
/ 11 мая 2010
  1. Вот учебник по использованию мозаичного фона: http://androidblogger.blogspot.com/2009/01/how-to-have-tiled-background-cont.html

  2. Я бы использовал комбинацию из двух контейнеров (возможно, LinearLayouts) для достижения этой цели. Внешний контейнер будет иметь layout_width и layout_height для fill_parent, чтобы занять все доступное пространство, и значение android: гравитация «center» для центрирования содержимого как по горизонтали, так и по вертикали. Внутренний параметр будет иметь оба параметра, равные wrap_content, чтобы занимать только необходимое пространство, и значение android: ориентация «вертикальное» для размещения, как вы описали. Затем добавьте изображение и элементы кнопок во внутренний контейнер.

  3. получить ссылку на кнопку в вашем классе активности с помощью findViewById (не забудьте добавить android: id к кнопке в xml), а затем на вашу ссылку на элемент Button добавьте OnClickListener, который создает объект Intent, представляющий действие, которое вы хотите запустить, и передает его startActivity. Обычно я использую этот конструктор (т.е. new Intent(CurrentActivity.this, ActivityToLaunch.class)).

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

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