Как разместить кнопку в двух макетах

#android #android-layout #android-button

#Android #android-макет #android-кнопка

Вопрос:

У меня есть три кнопки в одной строке в линейном макете, а чуть ниже список размещен в другом линейном макете. Я хочу поместить некоторую часть одной кнопки (например, стрелку) в первый элемент списка. (Чтобы указать, что список является результатом нажатия кнопки). Как это возможно? пожалуйста, помогите. Я хочу сделать, как показано на рисунке ниже.введите описание изображения здесь

Комментарии:

1. Пожалуйста, опубликуйте код, который у вас уже есть, чтобы понять, что вы хотите сделать и что вы уже сделали.

2. @brummfondel Я отредактировал свой вопрос и прикрепил изображение того, что я хочу сделать.

3. возьмите относительный макет с помощью listview и сообщения со стрелкой 3 и поиграйте с его видимостью

4. Это не «какая-то часть кнопки». То, о чем вы думаете, невозможно. Это просто изображение (в ImageView), выполненное в виде кнопки. Я думаю, что теперь это довольно просто, как и все остальные. используйте изображения и делайте их видимыми при нажатии на определенный элемент.

5. Я хочу использовать фоновое изображение для кнопки со стрелкой ((а не другое изображение для стрелки), и я хочу разместить стрелку выбранной кнопки в 1-й строке списка. спасибо заранее.

Ответ №1:

Идея для вашего представления, кодирование — это ваша задача.

Самый верхний родительский элемент — RelativeLayout .

 |----- Relative Layout.
        |--- LinearLayout-1 --> City, Country, Global ( all weight = 1 )
        |--- LinearLayout-2 --> ( layout_below="LinearLayout-1" )
                  |--- 3 x ImageView  ( all weight = 1, Gravity=Center )
                       |--- Use View.SetVisibility(View.Invisible) to show/hide
        |--- ListView --> ( layout_below="LinearLayout-1" ) // Still below LL1.
 

Плавающий вид

Комментарии:

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

2. @Zahidul Если вы хотите добиться этого таким образом, обратитесь @Kostya к ответу и укажите listivew -ve margin (высота стрелки).

Ответ №2:

Создайте одно изображение со стрелкой, направленной вниз по центру. Когда вы нажимаете на любую кнопку, в вашем OnClickListener добавьте код, заменяющий изображение кнопки этим новым изображением.

btnCity.setBackground(getResources().getDrawable(R.drawable.selectedbtnimage));

Вам нужно будет добавить еще немного кода для сброса изображений других кнопок в исходные изображения кнопок.