Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
1ые
1 / 1 / 0
Регистрация: 19.01.2013
Сообщений: 98
#1

TableLayout не растягивается на высоту свободной области - Программирование Android

17.09.2015, 23:03. Просмотров 455. Ответов 4
Метки нет (Все метки)

Добрый день не tablerow не растягивается по высоте экрана:
Layout:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">
 
    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="4"
        android:src="@drawable/ic_launcher"
        android:id="@+id/imageView" />
 
    <TableLayout
        android:layout_weight="1"
        android:stretchColumns="*"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:id="@+id/table_layout">
 
    </TableLayout>
 
    <ImageView
        android:layout_weight="4"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:src="@drawable/ic_launcher"
        android:id="@+id/imageView2" />
 
</LinearLayout>
Используется данное view в ViewPager, ну это я думаю не особо важно.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
import android.content.Intent;
 
import android.os.Bundle;
import android.support.v4.app.Fragment;
 
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TableLayout;
import android.widget.TableRow;
 
 
 
 
 
public class PageFragment extends Fragment {
 
    int pageNumber;
 
 
    static final String ARGUMENT_PAGE_NUMBER = "arg_page_number";
 
    static PageFragment newInstance(int page)
    {
        PageFragment fragment = new PageFragment();
        Bundle argument = new Bundle();
        argument.putInt(ARGUMENT_PAGE_NUMBER,page);
        fragment.setArguments(argument);
        return fragment;
 
    }
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        pageNumber = getArguments().getInt(ARGUMENT_PAGE_NUMBER);
 
    }
 
 
 
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.ch_level_layout,null);
        final MyDrawables md = (MyDrawables) getActivity().getApplicationContext();
        View.OnClickListener onclicklistener = new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String str = ((Button) v).getText().toString() ;
                md.setNum_of_level(Integer.parseInt(str));
                Intent intent = new Intent(getActivity(),MyActivity.class);
                startActivityForResult (intent,1);
            }
        };
 
 
        TableRow tablerow;
        String str;
        Button btn_t ;
 
 
 
        TableLayout tableLayout = (TableLayout)view.findViewById(R.id.table_layout);
 
       // int widthButt =(int) (view.getWidth()-view.findViewById(R.id.imageView).getWidth()*2  / 3.2);
       // int heightButt = (int)(view.getHeight()-view.findViewById(R.id.imageView).getHeight()*2 / 6.2);
 
 
 
        for (int i = 0; i < 4; i++) {
            tablerow = new TableRow(getActivity());
            tablerow.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT,
                    TableRow.LayoutParams.MATCH_PARENT,1));
            for (int j = 0; j < 3; j++) {
                str = Integer.toString(pageNumber * 10 + i * 3 + j + 1);
                btn_t = new Button(getActivity());
               // btn_t.setWidth(widthButt);
               // btn_t.setHeight(heightButt);
 
                tablerow.addView(btn_t,j);
                btn_t.setText(str);
                btn_t.setOnClickListener(onclicklistener);
 
            }
            tableLayout.addView(tablerow,i);
        }
        return view;
 
    }
}

В итоге выходит вот что :
TableLayout не растягивается на высоту свободной области

Как сделать чтобы растягивалось во всю высоту ?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2015, 23:03     TableLayout не растягивается на высоту свободной области
Посмотрите здесь:

Не растягивается Spinner в TableLayout - Программирование Android
Доброго времени суток. Понадобился выпадающий список на экране. Компоненты которого размещены в TableLayout в двух условных столбцах. ...

TableLayout - Программирование Android
Как сделать так что б TextView в TableLayout была на всю строку? :scratch:

TableLayout - Программирование Android
Проблема в расстановки компонетов в TableLayout есть код: &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;TableLayout...

TableLayout - Программирование Android
Считываю данные из БД, и размещаю их в таблице на основе TableLayout. Для того чтоб она листалась, так как строк довольно много,...

TableLayout - Программирование Android
Как убрать отступы между ячейками?Например сетка заполнена кнопками,мне нужно уменьшить расстояние между кнопками.:(

TableLayout - Программирование Android
Как мне растянуть EditText, чтобы его левый край был возле правого края TextView? Разметка &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
18.09.2015, 08:36     TableLayout не растягивается на высоту свободной области #2
на кнопки тоже надо применять LayoutParams, создавать и применять, так же как и на TableRow
1ые
1 / 1 / 0
Регистрация: 19.01.2013
Сообщений: 98
18.09.2015, 12:25  [ТС]     TableLayout не растягивается на высоту свободной области #3
Какие именно параметры применять ?
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
18.09.2015, 13:03     TableLayout не растягивается на высоту свободной области #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
TableRow как раз и растягивается на весь экран, это кнопки в нем имеют параметры wrap_content
вот те параметры что применяются на TableRow, надо применять не на нее, а на кнопки
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.09.2015, 16:43     TableLayout не растягивается на высоту свободной области
Еще ссылки по теме:

TableLayout - Программирование Android
Нашла на сайте как делать сеточку с помощью TableLayout. И вроде всё сделала, как сказано... Но почему-то отображает только первую строку...

TableLayout по центру - Программирование Android
Есть на активити imageView и TableLayout. imageView в самом верху. Как разместить TableLayout по центу оставшегося пространства?

Не работает TableLayout - Программирование Android
Вобщем, при попытке запустить выдаёт ошибку. В xml у меня получилось сделать в 1 ряд 2 кнопки, а тут нет... Пожалуйста, помогите ...

Не обновляется содержимое TableLayout в Fragment - Программирование Android
Здравствуйте. У меня есть фрагмент, в котором располагается таблица TableLayout с перечнем издательств. Также есть кнопка &quot;Добавить новое...

Связка ScrollView + Include + TableLayout - Программирование Android
Добрый день. Хочу реализовать основное меню с кнопками, небольшим текстом и логотипом. Для этого использую TableLayout. Для прокрутки по...

Программное заполнение и верстка TableLayout - Программирование Android
Здравствуйте. Не удается программно задать параметры, аналогичные XML - файлу. &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;FrameLayout...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1ые
1 / 1 / 0
Регистрация: 19.01.2013
Сообщений: 98
18.09.2015, 16:43  [ТС]     TableLayout не растягивается на высоту свободной области #5
Благодарю за ответы, проблему исправил следующим образом:
Для TableRow:
Java
1
2
tablerow.setLayoutParams(new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT,
                    TableLayout.LayoutParams.MATCH_PARENT,1));
Для Button:
Java
1
btn_t.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT,TableRow.LayoutParams.MATCH_PARENT,1));
Yandex
Объявления
18.09.2015, 16:43     TableLayout не растягивается на высоту свободной области
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru