android:如何用动态创建的许多textview填充relativelayout(屏幕大小)?

时间:2013-03-28 13:28:52

标签: android textview fill-parent

我尝试使用下面的代码,但是文本视图在到达屏幕末尾后不会改变行。

    RelativeLayout ll = (RelativeLayout)findViewById(R.id.viewObj);
    int lastid=0;
    for (int i=0; i<100; i++) {
        String teststr =  " hello ";
        TextView textView2 = new TextView(this); 
        textView2.setId(i+1);
        textView2.setTextSize(30);
        textView2.setBackgroundColor(Color.GREEN);
        textView2.setTextColor(Color.RED);
        textView2.setTypeface(Typeface.MONOSPACE);
        textView2.setText(teststr+String.valueOf(i));  
        if (i>0)
        {
            RelativeLayout.LayoutParams lay = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
            lay.addRule(RelativeLayout.RIGHT_OF, lastid);
            ll.addView(textView2, lay);             
        } else {
            ll.addView(textView2);
        };
        lastid = textView2.getId();

    }

但是,我不知道如何确定何时更换线路。我只是继续将新的textview放在最后创建的文本视图的右侧。谁能告诉我完成任务的正确逻辑?非常感谢。

1 个答案:

答案 0 :(得分:1)

轻松修复。切换到动态创建的LinearLayout,并将其方向设置为垂直:

lay.setOrientation(LinearLayout.VERTICAL);