0

我正在尝试将动态复选框添加到布局中。只要复选框的文本是单行的,它就可以正确对齐。但是当我的文本变成多行时,它没有正确对齐,文本也没有完全显示。请按照图了解它的外观

在此处输入图像描述

我正在写的代码是这样的

else if (answerType == Constants.ANSWER_CHECKBOX_TYPE) {

        final CheckBox[] rb = new CheckBox[noOfAnswers];
        for (int i = 0; i < noOfAnswers; i++) {

            LinearLayout.LayoutParams params1 = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT, 1f);
            SurveyAnswer answer = question.getAnswerList().get(i);
            rb[i] = new CheckBox(this);
            rb[i].setSingleLine(false);
            rb[i].setTextColor(Color.BLACK);
            rb[i].setText(answer.getAnsweText());
            rb[i].setTag(size);
            linear.addView(rb[i], params1);
            rb[i].setId(i + 1);
            rb[i].setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

                @Override
                public void onCheckedChanged(CompoundButton buttonView,
                        boolean isChecked) {
                    // TODO Auto-generated method stub

                    if (isChecked == true) {

                        viewList.add(buttonView);
                    } else {

                        viewList.remove(buttonView);
                    }
                }
            });

        }
4

2 回答 2

1

而不是这个实现,我喜欢去 gridview 实现。通过使用 gridview 并在网格中添加复选框项目,我能够将其正确对齐到中心。

于 2014-02-26T06:22:01.590 回答
0

在 html 中有样式选项,例如 style="float:left;" 这将直接对齐 dyna..生成的复选框。在这里尝试这样的事情。尝试为此复选框设置一些样式。

于 2013-02-21T11:09:51.970 回答