是否可以动态地在相对布局中添加textView,从arraylist获取信息?我会解释一下。例如,我有一个从数据库中获得的五个单词的反对者。然后我会在其布局中创建5个不同的textView。 我无法使用listview,因为用户可以选择这些TextView的poszione。
我希望我能更好地解释,因为这是一件很复杂的事情,否则就会解释。
这是我正在使用的代码,因此我能够创建更多TextView,但不能从数组列表中创建。我还需要为每个TextView的上边距赋予不同的值!
-
感谢所有帮助我解决这个问题的人!
答案 0 :(得分:1)
像这样创作
ArrayList<Integer> list=new ArrayList<Integer>();
如果您的列表大小为5
for(int i=0;i<list.size();i++){
TextView tv=new TextView(this);
tv.setText(""+list.get(i));
}
尝试这绝对有效.....
答案 1 :(得分:0)
final int N = 10; // total number of textviews to add
final TextView[] myTextViews = new TextView[N]; // create an empty array;
for (int i = 0; i < N; i++) {
// create a new textview
final TextView rowTextView = new TextView(this);
// set some properties of rowTextView or something
rowTextView.setText("This is row #" + i);
// add the textview to the linearlayout
myLinearLayout.addView(rowTextView);
// save a reference to the textview for later
myTextViews[i] = rowTextView;
}
答案 2 :(得分:0)
是的,您可以将textview添加到相对布局中。
RelativeLayout container = (RelativeLayout) findViewById(R.id.container);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT);
ArrayList<Integer> list=new ArrayList<Integer>();
for(int i=0;i<list.size();i++){
TextView textView = new TextView(this);
textView1.setText("A"+i);
textView1.setId(i);
container.addView(textView);
params.addRule(RelativeLayout.BELOW,i);
}