Страница 1 из 1

Динамическое создание элементов интерфейса

Добавлено: 17 июл 2013, 12:33
sanu0074
Здравствуйте. Мне интересно знать, как динамически создавать элементы интерфейса.

Например, в цикле вызывается метод, который создает TextView, в него вставляет текст:

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

LinearLayout layout = (LinearLayout) findViewById(R.id.L1);
    	 
    	 TextView txt = new TextView(this); 
         txt.setText(text); 
         layout.addView(txt);
А например, мне нужно задать крупный шрифт этому TextView, покрасить его, потом динамически создать LinearLayout задав ему отступы и толщину\цвета границ и в этот LinearLayout вставить уже созданный и отформатированный TextView, а потом уже все это поместить в главный layout.

Можете показать как это делать на моем примере, либо есть ли статьи где описаны такие действия с примерами (желат. на русском)
Очень благодарен за внимание :)

Re: Динамическое создание элементов интерфейса

Добавлено: 17 июл 2013, 12:39
Foenix
тут по-моему это каждый второй спрашивает. Поищи по форуму. Тема такая точно есть.

Re: Динамическое создание элементов интерфейса

Добавлено: 17 июл 2013, 12:42
sanu0074
Foenix писал(а):тут по-моему это каждый второй спрашивает. Поищи по форуму. Тема такая точно есть.
может странно, но я ненашел, вбил именно фразу: Динамическое создание элементов интерфейса

Re: Динамическое создание элементов интерфейса

Добавлено: 17 июл 2013, 13:17
Foenix
:-D тут не такой интеллектуальный поиск
Просто вбей "динамическое", т.к. даже слово "динамич" не подойдет, тут, видимо, только поиск по точному слову.
Свой запрос разве что в гугл вбей, или яндекс - поиск по этому сайту, может так еще получится.

Re: Динамическое создание элементов интерфейса

Добавлено: 17 июл 2013, 13:27
sanu0074
Foenix писал(а)::-D тут не такой интеллектуальный поиск
Просто вбей "динамическое", т.к. даже слово "динамич" не подойдет, тут, видимо, только поиск по точному слову.
Свой запрос разве что в гугл вбей, или яндекс - поиск по этому сайту, может так еще получится.
Блин сделал так, но криво получилось:

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

    	 LinearLayout layout = (LinearLayout) findViewById(R.id.lin1);
    	 
    	 TextView txt = new TextView(this); 
         txt.setText(name); 
         LinearLayout  newLayout = new LinearLayout(this);
         newLayout.addView(txt,0);
         
    	 
    	 ImageView image = new ImageView(this);
         LinearLayout imageLayout = new LinearLayout(this);
         imageLayout.addView(image);
         
         newLayout.addView(imageLayout,1);
         layout.addView(newLayout);
Нужно что бы все ровно было и текст был перед картинкой а не после

Re: Динамическое создание элементов интерфейса

Добавлено: 17 июл 2013, 13:57
sanu0074
Вот сейчас так переделал:

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

    	 LinearLayout layout = (LinearLayout) findViewById(R.id.mainLinear);
    	 
    	 LinearLayout imageLayout = new LinearLayout(this);
    	 
    	 TextView txt = new TextView(this); 
         txt.setText(name); 
    	 
    	 ImageView image = new ImageView(this);
    	 imageLayout.addView(image);
    	 
    	 layout.addView(txt);
    	 layout.addView(imageLayout);
убрал индексы у addView(), т.к. картинки снизу начинают грузиться - это плохо..
Но, как мне тут сейчас сделать чтоы сначала текст а потом картинка шло, такой вот сам XML:

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

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/scroll" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent">

   <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
		android:id="@+id/mainLinear">     
   </LinearLayout>

</ScrollView>