我的视图中大约有100个textview,它们都显示特定于其id的值。该值是从程序中的另一个类设置的。
我正在寻找一个好的解决方案,如何对此进行编程,而又不会使程序停顿或充满内存。
要在文本视图中设置普通文本:
public void setSpecificTextView(string myString)
{
TextView text = (TextView) findViewById(R.id.textView1);
text.setText(myString);
}
但是我想要100个set函数,每个函数每次都需要检索一个textView。好像是不好的编程。
还考虑过将textviews分配为私有属性,但看起来也很混乱。文本视图的列表或数组列表如何?但是如何知道列表/数组列表中的哪个项目属于哪个方法
但是由于文本视图具有非常特定的名称,我该如何处理最佳方法?
编辑:我所有的textviews放入不同的tableLayouts和TableRows
最佳答案
如果TextView
都在同一个ViewGroup
中,则可以使用getChildCount()
和getChildAt()
遍历TextView
并设置每个文本,而不是使用findViewById
查找每个文本。
像这样的东西:
for(int i = 0; i < parent.getChildCount(); i++){
View child = parent.getChildAt(i);
if(child instanceof TextView){
# ... do something with the text view
}
}
关于java - Android-更新了大量的Textviews,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19244994/