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

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

Войти
Регистрация
Восстановить пароль
 
tolya1095
10 / 7 / 1
Регистрация: 12.10.2012
Сообщений: 158
#1

Использование арифметического цикла в программируемом layout - Программирование Android

14.02.2014, 16:07. Просмотров 551. Ответов 0
Метки нет (Все метки)

Надеялся, что сделаю прокручиваемую генерируемую программным способом таблицу, а выходит столбец.
Во вложенном цикле я хотел заставить TextView появляться по горизонтали, а складывается ощущение, что он либо их вообще не генерирует, либо накладывает друг на друга.
Кликните здесь для просмотра всего текста
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
import android.app.Activity;
import android.os.Bundle;
import android.widget.HorizontalScrollView;
import android.widget.ScrollView;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
 
public class MainActivity extends Activity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        
        TextView[][] TVM = new TextView[10][10];
        TableRow[] TRM = new TableRow[10];
        
        TableLayout TL = new TableLayout(this);
        
        for(int i=0;i<10;i++){ //Создаем строку
        
            for(int j=0;j<10;j++){ //Создаем текст в ширину
                TVM[i][j] = new TextView(this);
                TVM[i][j].setText("Привет #[" + i + "][" + j + "]!");
                TRM[i]= new TableRow(this);
                TRM[i].addView(TVM[i][j]);
            }
            
            TL.addView(TRM[i]);
        }
 
        HorizontalScrollView HSV = new HorizontalScrollView(this);
        HSV.addView(TL);
        
        ScrollView SV = new ScrollView(this);
        SV.addView(HSV);
        
        setContentView(SV);
        
    }
}


Добавлено через 4 часа 28 минут
Пытался применить в цикле отступ по левому краю, чтобы отступ генерировался по формуле 50*j и чтобы я мог увидеть остальные элементы, которые, как мне казалось, находятся друг в друге. Из этого вышло, что виден изначальный результат только с отступом от левого края в 450. Пользовался LogCat и цикл все эти значения проходит, т.е. ничего не теряется. Предполагаю, что все TextView вляпаны друг в друга, но как их "оторвать" для меня пока вопрос.

Добавлено через 22 часа 22 минуты
Попытался упростить себе жизнь, но сделал только хуже.
Кликните здесь для просмотра всего текста
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
import android.app.Activity;
import android.os.Bundle;
import android.view.ViewGroup.LayoutParams;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;
 
public class MainActivity extends Activity {
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        TableLayout tablelayout = (TableLayout) findViewById(R.id.tablelayout);
 
        TextView[][] TVM = new TextView[10][10];
        TableRow[] TRM = new TableRow[10];
        
        TVM[0][0] = new TextView(this);
        TVM[0][0].setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
        TVM[0][0].setText(000);
        TRM[0] = new TableRow(this);
        TRM[0].addView(TVM[0][0]);
        tablelayout.addView(TRM[0]);    
        
    }
}


Кликните здесь для просмотра всего текста
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
    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/scrollView1"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
 
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical" >
 
            <HorizontalScrollView
                android:id="@+id/horizontalScrollView1"
                android:layout_width="match_parent"
                android:layout_height="match_parent" >
 
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="horizontal" >
 
                    <TableLayout
                        android:id="@+id/tablelayout"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content" >
                    </TableLayout>
 
                </LinearLayout>
            </HorizontalScrollView>
 
        </LinearLayout>
    </ScrollView>


Подключаюсь к уже существующему tablelayout и пытаюсь в нем создать tablerow и textview.
TableRow нормально отображается(белым окошком), а при попытке запихнуть textview в tablerow получаю вылет
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2014, 16:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Использование арифметического цикла в программируемом layout (Программирование Android):

Использование элемента другого layout - Программирование Android
Здравствуйте! Проблема в следующем Главный экран содержит ViewPager с PagerTabStrip. На них выводится лэйаут содержащий ListView...

Использование разных onTouch для двух Layout элемента - Программирование Android
В одном Layout имеются два дочерних элемента LinearLayout. Как обработать метод onTouch для каждого отдельно? То есть листать первый и...

Анимированный дизайн смены Layout или просто выдвигаемый layout - Программирование Android
Ну, думаю тут и так всё понятно. Я просто не знаю, какие ключевые слова вводить в гугл, всё что попадается это Drawer А мне нужнен просто...

Не хочет работать в layout, но включается в layout-land - Программирование Android
доброе утро ! пишу первое приложение. обычный мейн.хмель выглядит вот так : &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;LinearLayout...

At android.widget.LinearLayout.setChildFrame Layout в Layout-те - Программирование Android
Нужен совет бывалых. У меня есть активити которое запускается с мейн активити, на нем лежит Layout (горизонтальный) в котором 2й...

Добавить layout на layout - Программирование Android
Нашёл такой код: layout.add(view); только не понимаю куда его писать. Нужно чтобы один layout можно было использовать в нескольких других. ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.02.2014, 16:07
Привет! Вот еще темы с ответами:

Использование Layout в другом Layout - Java
Нужно в одной форме использовать 2 вида Layout, причем один должен быть вложен в другой, это реально?

Qt 5.2.1 использование layout - C++ Qt
Имеется пустая форма на которую в конструкторе добавляются динамические виджеты. Нужно вывести их на форму так, чтобы при изменении размера...

Использование Layout Manager при построении интерфейса - Java
Есть ли какое нибудь доступное руководство по Layout Manager. Что-то никак его осилить не могу. Понимаю что удобная вещь вот только не...

Программирование арифметического цикла - Pascal ABC
Помогите сделать


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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