Как я могу сделать полноэкранную таблицу в Android - PullRequest
1 голос
/ 08 декабря 2010

Я работаю над программой для Android и хочу создать таблицу 3х7 (3 столбца, 7 строк), в которой каждая ячейка содержит кнопку.

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

Эта проблема также может быть легко решена с помощью макета, такого как GridLayout из Java.Есть ли эквивалент в Android?

Любые идеи очень ценятся.

Ответы [ 2 ]

2 голосов
/ 08 декабря 2010

Вы должны использовать линейные макеты с весами.

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

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width:"fill_parent" android:layout_height:"fill_parent" android:orientation="vertical">
    <LinearLayout android:layout_width:"fill_parent" android:layout_height:"fill_parent" android:orientation="vertical">
    <LinearLayout
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1">
        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1">
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
        </LinearLayout>    
        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1">
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
        </LinearLayout> 
        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1">
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
        </LinearLayout> 
        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1">
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
        </LinearLayout> 
        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1">
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
        </LinearLayout> 
        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1">
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
        </LinearLayout> 
        <LinearLayout
            android:orientation="horizontal"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1">
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
            <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
                    android:text="ButtonText"/>
        </LinearLayout> 
    </LinearLayout>
</LinearLayout>
</LinearLayout>
0 голосов
/ 08 декабря 2010

возможно установить android: layout_width на вашей кнопке в фиксированном размере "185dp"

...