2011-04-30 1 views
0

Android 용 andengine을 처음 사용하고 있습니다. 나는 단순히 동일한 메소드를 호출 할 수 있어야하지만 목록상의 다른 위치에 대한 다른 변수를 보낼 수있는 간단한 텍스트 목록을 작성합니다. 목록을 스크롤 할 필요가 없으며 짧습니다. 나는 간단한 텍스트를 사용하기로 결정하고 for 루프를 만들어 문자열 배열에서 나를 만들었다.AndEngine 및 Android : OnAreaTouched for 루프가 고유하지 않습니다.

루프가 작동하고 텍스트가 올바르게 작성되지만 터치하면 모두 해당 터치 대신 마지막 터치 지정이 수행됩니다.

터치 영역이 등록 된 곳에서 onAreaTouched 코드를 참조해야하거나 저장해야하는지 여부를 지정합니다. 여기

그것이 :

for(x =1; x<base.locale.length;x++){ 
       textLoc[x-1]=new Text(10,(110+(x*30)),base.getmFont(), 
             base.locale[x],HorizontalAlign.CENTER){ 
        @Override 
        public boolean onAreaTouched(final TouchEvent pSceneTouchEvent, final float pTouchAreaLocalX, final float pTouchAreaLocalY) { 

         base.moveListen(Integer.toString(x)); 
       loadNewScene(); 
         return true; 
        } 

       }; 

       scene.getLastChild().attachChild(textLoc[x]); 
       scene.registerTouchArea(textLoc[x]); 

      } 

답변

0

그 코드는 컴파일합니까? 이 줄의 내용 :

base.moveListen (Integer.toString (x));

최종 루프 변수 x가 아닌 값을 참조합니다.