Макет блесны Android как матрица - PullRequest
0 голосов
/ 23 января 2019

Я использую счетчик в моем проекте, чтобы пользователь мог выбрать номер из выпадающего списка.Я хочу использовать диалоговое окно и настроить его как матрицу, например, 1,2,3 находятся в одной строке, 4,5,6 - в другой строке, но пользователь должен иметь возможность выбрать 1 или 2. Возможно ли это и как можноЯ добился этого, используя одно текстовое поле в макете.

1 Ответ

0 голосов
/ 23 января 2019

Я думаю, что вы можете использовать три кнопки в строке для макета и установить OnOnClicklistener для каждой кнопки.

У вас есть customView в вашем адаптере, как это:

private View getCustomView(int position, ViewGroup viewGroup, int type) {

        View view = null;


        if (type == OPEN) {

            view = mLayoutInflater.inflate(R.layout.spinnerlistcurrencyopen_common, viewGroup, false);


        } else if (type == CLOSE) {

            view = mLayoutInflater.inflate(R.layout.spinnerlistcurrencyclose_common, viewGroup, false);
        }

       //find view by id your buttons here

        return view;

}

И у вас есть макет в открытом режиме, подобный этому (R.layout.spinnerlistcurrencyopen_common):

<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="3"
>

    <Button android:id="@+id/button1"
            ...
            android:layout_weight="1"/>

    <Button android:id="@+id/button2"
            ...
            android:layout_weight="1"/>

    <Button
        android:id="@+id/button3"
        ...
        android:layout_weight="1"/>

</LinearLayout>
...