我有一个自定义布局xml,我用它作为模板动态创建列表中的项目。但是,在将其添加到主布局之前,我似乎无法正确更改此自定义布局中元素的文本和颜色。我需要这样做,因为列表中的每个项目都可以不同。
如果我在主布局中添加了多个自定义布局,则对TextView对象所做的任何更改都会发生在列表中的第一个项目上。
我的自定义布局在名为' cat_panel.xml'的文件中的相对布局中有一个textview和一个复选框。
我制作布局的编码是:
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);
提前致谢
答案 0 :(得分:1)
更改
catTitleTv = (TextView) findViewById(R.id.catPanelTitle);
到
catTitleTv = (TextView) vw.findViewById(R.id.catPanelTitle);