0

以下のコードを使用しようとしましたが、画面の最後に達した後、テキストビューは行を変更しません。

    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();

    }

しかし、いつラインを変更するかを決定する方法がわかりません。最後に作成したテキストビューの右側に新しいテキストビューを配置し続けます。誰かがタスクを実行するための正しいロジックを教えてもらえますか? どうもありがとう。

4

1 に答える 1

1

簡単に修正。動的に作成された LinearLayout に切り替え、その向きを垂直に設定します。

lay.setOrientation(LinearLayout.VERTICAL);
于 2013-03-28T13:37:23.707 に答える