Тип внешнего объекта не Sprite
, а скорее анонимный подкласс Sprite
, и у вас нет возможности назвать этот анонимный подкласс в вашем коде.
В этом случае вам нуженимя для ссылки и, следовательно, анонимный класс не будет делать эту работу.Вместо этого вы можете использовать локальный класс (который ведет себя как анонимный класс с именем).В блоке кода вы можете написать:
class MySprite extends Sprite {
@Override
protected void onManagedUpdate(float pSecondElapsed) {
runOnUpdateThread(new Runnable() {
MySprite.this.getParent().detach(MySprite.this); // Here
});
}
};
Sprite sprFace = new MySprite();