0

簡単なゲームアプリを作っています。以下のコードのようなonUpdate()メソッドで1つのアニメーションリスナーを使用しました::

animated_gift. setPosition( (gift.getX() + gift.getWidth()/2 - animated_gift.getWidth()/2), 
            (gift.getY() + gift.getHeight()/2 - animated_gift.getHeight()/2));
                        mainScene.attachChild(animated_gift);

                        runOnUiThread(new Runnable() {
                            @Override
                            public void run() {
                                // TODO Auto-generated method stub
                                animated_gift.animate(gift_animation_duration , false , new IAnimationListener() {

                                    @Override
                                    public void onAnimationEnd(AnimatedSprite pAnimatedSprite) {
                                        animated_gift.detachSelf();
                                    }
                                });
                            }
                        });

しかし、それは私にエラーを与えます: 更新スレッドの致命的な例外 Array index out of bound Invalid Index (some integer number) size is (some integer number)

update メソッドには別のアニメーションも存在します。解決方法を教えてください。

4

1 に答える 1

0

最後に、上記の質問の解決策を見つけました。activity.this.runOnUpdateThread(...)の代わりに使用しrunOnUiThread(...)ます。

于 2014-02-10T13:16:42.880 に答える