android:java.lang.Object[]无法强制转换为android.widget.Button[] 声明: 检查所有充气点 问题:
我想获得屏幕上所有点的x和y坐标 但是logcat报告java.lang.Object[]不能强制转换为android.widget.Button[]。如何纠正错误?谢谢android:java.lang.Object[]无法强制转换为android.widget.Button[] 声明: 检查所有充气点 问题:,android,arrays,object,button,Android,Arrays,Object,Button,我想获得屏幕上所有点的x和y坐标 但是logcat报告java.lang.Object[]不能强制转换为android.widget.Button[]。如何纠正错误?谢谢 apple_shown = (Button[]) spots.toArray(); //LINE 684 苹果显示->类型按钮 点->类型队列 您正在尝试在按钮上投射斑点。这是不可能的我已经做了更多的研究,它似乎是这样工作的: public void Check_all_Spot(int BOY_
apple_shown = (Button[]) spots.toArray(); //LINE 684
苹果显示->类型按钮
点->类型队列
您正在尝试在按钮上投射斑点。这是不可能的我已经做了更多的研究,它似乎是这样工作的:
public void Check_all_Spot(int BOY_X)
{
int [] lowest_x;
int [] lowest_y;
int apple_shown_length =spots.size();
Button [] apple_shown = null;
String text_x ="";
String text_y = "";
if (!spots.isEmpty())
{
apple_shown = spots.toArray(new Button[apple_shown_length]);
}
public void Check_all_Spot(int BOY_X)
{
int [] lowest_x;
int [] lowest_y;
int apple_shown_length =0;
Button [] apple_shown;
String text_x ="";
String text_y = "";
if (!spots.isEmpty())
{
apple_shown = (Button[]) spots.toArray(); //LINE 684
apple_shown_length = apple_shown.length;
}
lowest_x = new int [apple_shown_length];
lowest_y = new int [apple_shown_length];
apple_shown = new Button [apple_shown_length];
for (int w = 0; w < apple_shown_length ; ++w)
{
lowest_x[w] = (int) apple_shown[w].getX();
lowest_y[w] = (int) apple_shown[w].getY();
text_x = text_x+ lowest_x[w];
text_y = text_y+ lowest_y[w];
}
image_boy.setText("lowest spot\n"+text_x+"\n"+text_y);
}
12-01 00:57:12.760: E/AndroidRuntime(14706): FATAL EXCEPTION: main
12-01 00:57:12.760: E/AndroidRuntime(14706): java.lang.ClassCastException: java.lang.Object[] cannot be cast to android.widget.Button[]
12-01 00:57:12.760: E/AndroidRuntime(14706): at com.abc.abc.Game_collecting_view.Check_all_Spot(Game_collecting_view.java:684)
12-01 00:57:12.760: E/AndroidRuntime(14706): at com.abc.abc.Game_collecting_view.Increment(Game_collecting_view.java:777)
12-01 00:57:12.760: E/AndroidRuntime(14706): at com.abc.abc.Game_collecting_view$RptUpdater.run(Game_collecting_view.java:754)
12-01 00:57:12.760: E/AndroidRuntime(14706): at android.os.Handler.handleCallback(Handler.java:615)
12-01 00:57:12.760: E/AndroidRuntime(14706): at android.os.Handler.dispatchMessage(Handler.java:92)
12-01 00:57:12.760: E/AndroidRuntime(14706): at android.os.Looper.loop(Looper.java:137)
12-01 00:57:12.760: E/AndroidRuntime(14706): at android.app.ActivityThread.main(ActivityThread.java:4898)
12-01 00:57:12.760: E/AndroidRuntime(14706): at java.lang.reflect.Method.invokeNative(Native Method)
12-01 00:57:12.760: E/AndroidRuntime(14706): at java.lang.reflect.Method.invoke(Method.java:511)
12-01 00:57:12.760: E/AndroidRuntime(14706): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1008)
12-01 00:57:12.760: E/AndroidRuntime(14706): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:775)
12-01 00:57:12.760: E/AndroidRuntime(14706): at dalvik.system.NativeStart.main(Native Method)
apple_shown = (Button[]) spots.toArray(); //LINE 684
public void Check_all_Spot(int BOY_X)
{
int [] lowest_x;
int [] lowest_y;
int apple_shown_length =spots.size();
Button [] apple_shown = null;
String text_x ="";
String text_y = "";
if (!spots.isEmpty())
{
apple_shown = spots.toArray(new Button[apple_shown_length]);
}