setText()无法处理linearLayout中动态添加的按钮

时间:2013-07-02 12:10:57

标签: android android-button

标题说明了一切。

我正在制作一个应用程序,我必须在线性布局中添加动态按钮,我尝试过:

testButtons = new Button[caseDetails.length()];
for (int i = 0; i < caseDetails.length(); i++) {
    temp = caseDetails.getJSONObject(i);
    Log.e("TEMP  " + i, temp.toString());
    testButtons[i] = new Button(this) ;
    testButtons[i].setText("Hello Hi");
    testButtons[i].setHeight(LayoutParams.WRAP_CONTENT);
    testButtons[i].setWidth(LayoutParams.WRAP_CONTENT);
    testButtons[i].setPadding(20, 20, 20, 20);
    testLayout.addView(testButtons[i]);
}

我在模拟器上看到的只有两个没有文字的按钮。为什么会这样?

1 个答案:

答案 0 :(得分:3)

有同样的问题..试试这个..

testButtons = new Button[caseDetails.length()];

for (int i = 0; i < caseDetails.length(); i++) {
    temp = caseDetails.getJSONObject(i);
    testButtons[i] = new Button(this) ;
    testButtons[i].setText("Hello Hi");
    LayoutParams lp = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
    testButtons[i].setPadding(20, 20, 20, 20);
    testLayout.addView(testButtons[i], lp);
}

还要确保linearLayout的方向是垂直的。祝好运! :)