2012-09-03 2 views
0

저는 티타늄을 처음 사용하고 티타늄을 사용하여 첫 번째 IOS 응용 프로그램을 만드는 과정에서 유스 케이스로 벽에 부딪혔습니다.테이블 행의 열린지도 주석을 클릭 하시겠습니까? on Titanium

테이블 뷰의 특정 행을 클릭하여지도에서 주석을 열려고합니다. 나는 이것으로 많은 성공을 거두지 못했고 어떤 도움을 온라인으로 찾을 수 없었다. 이 일이 불가능한가요, 아니면 제가 잘못하고있는 것입니까? 다음은 내 코드입니다 :

table.addEventListener('click', function (event) { 
    Ti.API.info("Index of row that is clicked: "+event.index); 
    globals.annos[event.index].fireEvent('click'); 
}); 

'테이블'내있는 TableView 행과 global.annos의 무리 [] 주석의 내 배열이 함께합니다.

내 목표는 내가 클릭 한 테이블 행의 색인에 해당하는 주석을 여는 것입니다. 위 코드는 아무 것도 달성하지 못합니다. 주석의 '클릭'이벤트를 실행하면 주석이 열렸을 것이라고 생각했지만 분명히 착각했습니다.

누군가 나를 도와 줄 수 있습니까? 어떤 도움이라도 대단히 감사 할 것입니다.

답변

0

SOLVED! 문서를 더 철저히 읽지 않아야합니다!

mapview.selectAnnotation(globals.annos[event.index]); 

이렇게하면 해당 주석이 열립니다.

0

Android를 사용하는 경우 특수 효과의 click 이벤트는 지원되지 않습니다. 더 많은 크로스 플랫폼 접근 방식은 MapView 자체에서 클릭 이벤트를 발생시키는 것입니다.

On iOS, if the user clicks on the pin or annotation, the clicksource is one of: pin, annotation, leftButton, rightButton, leftView, rightView, title, or subtitle. If the user deselects the annotation by clicking elsewhere in the map view, clicksource is null.

그리고 당신은 통과 didnt가 :

는 아이폰 OS를 사용하는 경우에, 당신의 클릭 이벤트 설정이 정확하지 않은, 당신은 설명서에 따라, 주석의 어떤 부분이 당신의 클릭을 정의해야 event 합성 이벤트의 속성을 정의하는 객체입니다. 테이블 이벤트 리스너에서 다음을 시도해보십시오.

var event = { 
    source : table, 
    type : 'click', 
    clicksource : 'pin' 
}; 
globals.annos[event.index].fireEvent('click', event); 
+0

제안을 시도했지만 작동하지 않았습니다. ( – ares05