2015-12-05 5 views
0

У меня есть собственный макет xml, который я использую в качестве шаблона для создания элементов в списке динамически. Однако я не могу изменить текст и цвет элементов в этом настраиваемом макете, прежде чем добавить его в основной макет. Мне нужно сделать это, поскольку каждый элемент в списке может быть другим.Как изменить свойства макета представления программно

Если я добавил более одного из этих настраиваемых макетов в основной макет, любые изменения, которые я делаю для объекта TextView, всегда происходят в первом элементе в списке.

В моем обычном макете есть текстовое окно и флажок в относительном макете в файле с именем «cat_panel.xml».

Мои кодирования для создания макета является:

LinearLayout rootEl = (LinearLayout) findViewById(R.id.pageWrapper); 
LayoutInflater inflater = LayoutInflater.from(MainActivity.this); 
View vw; 

vw=inflater.inflate(R.layout.cat_panel, rootEl, false); 
catTitleTv = (TextView) findViewById(R.id.catPanelTitle); 
catTitleTv.setText("testing 1"); 
rootEl.addView(vw); 

//the above is then repeated 
vw=inflater.inflate(R.layout.cat_panel, rootEl, false); 
catTitleTv = (TextView) findViewById(R.id.catPanelTitle); 
catTitleTv.setText("testing 2"); 
rootEl.addView(vw); 

Заранее спасибо

ответ

1

Изменить

catTitleTv = (TextView) findViewById(R.id.catPanelTitle); 

в

catTitleTv = (TextView) vw.findViewById(R.id.catPanelTitle); 
+0

Отлично! Так просто! Спасибо. – Amos

Смежные вопросы