Как мы можем поместить меню на экране? - PullRequest
0 голосов
/ 19 мая 2011

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

1 Ответ

0 голосов
/ 29 мая 2011

Например, вы можете создать 2 вложенных горизонтальных LinearLayouts в XML-файле макета, причем второй будет пустым, но с идентификатором, например:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout android:id="@+id/linearLayout1"
    android:layout_height="wrap_content" android:layout_width="fill_parent"
    android:orientation="horizontal">
    <ImageButton android:layout_height="wrap_content" android:id="@+id/imageButton1" android:src="@drawable/icon" android:layout_width="wrap_content" android:padding="0px"></ImageButton>
    <ImageButton android:layout_height="wrap_content" android:id="@+id/imageButton2" android:src="@drawable/icon" android:layout_width="wrap_content" android:padding="0px"></ImageButton>
    <ImageButton android:layout_height="wrap_content" android:id="@+id/imageButton3" android:src="@drawable/icon" android:layout_width="wrap_content" android:padding="0px"></ImageButton>
    <ImageButton android:layout_height="wrap_content" android:id="@+id/imageButton4" android:src="@drawable/icon" android:layout_width="wrap_content" android:padding="0px"></ImageButton>
</LinearLayout>
<LinearLayout android:id="@+id/linearLayout2" android:layout_height="wrap_content" android:layout_width="fill_parent" android:orientation="horizontal"></LinearLayout>

Затем в коде Java выможно динамически добавлять второй ряд изображений с помощью кнопок первого ряда onClickListeners, например, так (пример добавляет только 1 изображение во второй ряд):

firstButtonInFirstLine = (ImageButton) findViewById(R.id.imageButton1);
    firstButtonInFirstLine.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            LinearLayout secondLinearLayout = (LinearLayout) findViewById(R.id.linearLayout2);

            ImageButton btn = new ImageButton(MainAct.this);
            btn.setImageResource(R.drawable.misc);
            secondLinearLayout.addView(btn);
        }
    });

Этого можно добиться с помощью интерактивных элементов ImageView.

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