gpt4 book ai didi

java - 使用 setLayoutParams 循环 - ClassCastException

转载 作者:行者123 更新时间:2023-12-01 19:05:34 27 4
gpt4 key购买 nike

-更新-

我已按照 Agarwal 的建议进行操作,但现在出现此错误:

04-21 11:42:01.807: E/AndroidRuntime(1456): java.lang.ClassCastException: android.view.ViewGroup$LayoutParams cannot be cast to android.widget.LinearLayout$LayoutParams

我正在使用此代码动态设置 15 个按钮的宽度。而且,你猜对了,它不起作用。错误发生在 for 循环中,但我不确定为什么。

    Button[] buttons = new Button[16];
buttons[0] = (Button)findViewById(R.id.root2);
buttons[1] = (Button)findViewById(R.id.root3);
/* blah blah blah */
buttons[13] = (Button)findViewById(R.id.root15);
buttons[14] = (Button)findViewById(R.id.root16);

LayoutParams lp = new LayoutParams(widthOfButtons,LayoutParams.WRAP_CONTENT);

for(int x = 0; x < 16; x ++){
buttons[x].setLayoutParams(lp);
}

感谢您的帮助。 (如果有人能想出更好的方法来填充 buttons[] 变量,我们将不胜感激。)

最佳答案

for(int x = 0; x < 16; x ++){
buttons[x].setLayoutParams(lp);
}

上面的循环重复了 16 次,您只使用了 15 个按钮,要么添加一个按钮,要么更改 x < 15。如果您更改 x< 15,则还要更改以下内容

按钮[]按钮=新按钮[15];

关于java - 使用 setLayoutParams 循环 - ClassCastException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10258506/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com