0

プログラムでテキスト ビューを作成し、別の textView を最初のビューのすぐ隣に配置しようとしています。しかし、私はそれを行うことができません。

ここに私が書いたコードがあります、

    //1st textview
     TextView itemText = new TextView(context);
    itemText.setText(mItemText);
    Typeface itemFont = Typeface.createFromAsset(context.getAssets(), "fonts/" + "Roboto" + ".ttf");
    itemText.setTypeface(itemFont,Typeface.BOLD);
    itemText.setPadding(0, padding, 0, 0);
    itemText.setId(10);
    RelativeLayout.LayoutParams itemTextParams = new RelativeLayout.LayoutParams(
            RelativeLayout.LayoutParams.MATCH_PARENT,
            RelativeLayout.LayoutParams.MATCH_PARENT);
    itemTextParams.addRule(RelativeLayout.ALIGN_PARENT_TOP);
    itemTextParams.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
    itemText.setTextSize(font_size);
    itemText.setLayoutParams(itemTextParams);

    //2nd text view
    TextView seperator = new TextView(context);
    seperator.setText(mSeperator);
    seperator.setPadding(0,padding,0,0);
    seperator.setTypeface(null,Typeface.BOLD);
    RelativeLayout.LayoutParams seperatorParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
    seperatorParams.addRule(RelativeLayout.ALIGN_PARENT_TOP);
    seperatorParams.addRule(RelativeLayout.RIGHT_OF,itemText.getId());
    seperatorParams.addRule(RelativeLayout.CENTER_VERTICAL);
    seperator.setLayoutParams(seperatorParams);

seperatorParams.addRule(RelativeLayout.CENTER_HORIZONTAL) は機能しますが、 seperatorParams.addRule(RelativeLayout.RIGHT_OF,itemText.getId()) を使用すると、テキストが表示されません。

誰かが私が間違っているところを指摘できますか? または、これを行う他の方法はありますか?

4

1 に答える 1

0

の幅itemTextParamsは に設定されてMATCH_PARENTいるため、その右側には何も配置できません。WRAP_CONTENT幅の値に変更するか定義します。

于 2013-10-09T21:38:06.077 に答える