在我的代码中,我有一个ArrayList< Buttons>字段名为mButtons.
这些按钮中的每一个都按钮(在 XML中)调用onButtonClick上的相同onClick函数.
该函数如下所示:
这些按钮中的每一个都按钮(在 XML中)调用onButtonClick上的相同onClick函数.
该函数如下所示:
public void onButtonClick(View view) { int buttonIndex = mButtons.indexOf(view); }
但Android Studio一直警告我有关’ArrayList.indexOf’的可疑调用.
好吧,我试图通过将视图转换为Button来摆脱.
然后警告改为Casting’view’到’Button’是多余的.
好吧,我尝试更改函数签名以接收Button而不是View.
但是现在我对每个Button声明(XML)都有一个警告:’onButtonClick’on’… Activity’的签名不正确.
我真的在考虑添加// noinspection SuspicIoUsMethodCalls,因为它似乎没有解决方法.
如果有人知道如何摆脱它,我将不胜感激.
解决方法
您可以在之前转换为按钮.
Button button = (Button) view; int buttonIndex = mButtons.indexOf(button);