Динамичный контент у табов

Интерфейс, диалоги, темы, стили, меню
Ответить
kossin
Сообщения: 5
Зарегистрирован: 15 июн 2014, 16:24

Динамичный контент у табов

Сообщение kossin » 15 июн 2014, 16:36

Доброе время суток.
Я только начал изучать андроид.

Вопрос: В начале программа запрашивает число. Допустим ввели 4-е.
При помощи цикла создается 4-е вкладки в TabHost.

Все отлично. Мне нужно создать контент на каждой вкладке в этом же цикле. К примеру на каждой 4-е EditText.

Подскажите как лучше или код какой нибудь...
Было бы здорово если на пальцах объясните :) ато я не очень понимаю...


Есть код вот такой(мною писанный) , но я все равно не пойму как return 4-е EditText..

Код: Выделить всё

	//Создание закладок
					for(int j=0;j<num_vars_text;j++){
						
						
						spec = tabs.newTabSpec("tag"+j);
						spec.setIndicator("x"+j);
						
						spec.setContent(new TabHost.TabContentFactory(){
				            public View createTabContent(String tag)
				            {                                   
				            	 /*TextView tv = new TextView(SimplexWork.this);
				                 tv.setText("Это создано вручную");
				                 return tv;*/
				                 
				            	 for(int i=0;i<5;i++){
							    	  
										//Добавление название поля
										  TextView  txt = new TextView(SimplexWork.this);
										  txt.setLayoutParams(lEditParams);  
										  txt.setText("X"+i);
										  txt.setId(i);
										  TextViewList.add(i, txt);
										 // layout_tabs.addView(txt);
										  return txt;
										  
										//Добавление поля
										/*  EditText  editTxt = new EditText(SimplexWork.this);
										  editTxt.setLayoutParams(lEditParams);  
										  editTxt.setInputType(InputType.TYPE_CLASS_NUMBER);
										  editTxt.setMaxLines(1); 
										  editTxt.setId(i);
								          editTextList.add(i, editTxt);*/
								         // layout_tabs.addView(editTxt);
								          //editTxt.setHint(editTxt.getId());

							        }
				            	 return null;
				            }       
				        });     

						tabs.addTab(spec);
					}


Donart
Сообщения: 114
Зарегистрирован: 06 ноя 2013, 08:59

Re: Динамичный контент у табов

Сообщение Donart » 15 июн 2014, 17:32

Подскажите как лучше
Урок по созданию прогаммных View дан больше для общего развития. Не стоит ради програмных едитов делать цикл, это не кнопочки в Swing клепать, проще и понятнее сделать все в XML. В данном случае точно.
И стоит обратить внимание на альтернативную реализацию табов с использованием ActionBar и Fragment, уроки есть на сайте. Конкретно по теме реализации табов в ActionBar смотрите здесь

kossin
Сообщения: 5
Зарегистрирован: 15 июн 2014, 16:24

Re: Динамичный контент у табов

Сообщение kossin » 15 июн 2014, 17:58

Donart писал(а): проще и понятнее сделать все в XML. В данном случае точно.
В моем случае не должно быть статично в XML. Или вы предлагаете visible использовать?

Т.е. я ввел 3 то создалось EditText, 4-е ввел 4-е создалось. Есть ограничение можно только 5 ввести.

Мне нужно как бы имитировать уравнение , в которых EditText - это переменные. А почему табы? - просто этих уравнений может быть несколько и каждое это свой таб.

По счет табов спс, буду читать.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Динамичный контент у табов

Сообщение Foenix » 15 июн 2014, 22:48

это просто вопрос десятилетия будет - тут наверное каждый третий приходит и спрашивает как создавать компоненты программно, динамически и так далее. Даже не представляю откуда у всех такая постановка задачи. Гугл сколько прог написал - и не использовал это, а всем остальным - надо.
Если очень надо - поищи на форуме, тут это 100500 раз отвечали.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Ответить