1

나는 사용자가 갤러리에서 사진을 선택하고 이미지를 그려서 일부 항목을 둘러싸도록 허용해야하는 애플리케이션 (iOS 및 Android 용)을 개발 중입니다. 사용자가 그리기를 마자 마자 팝업에서 항목의 이름을 지정하라는 메시지가 나타납니다. 이름을 지정하면 항목이 항목 테이블에 추가되고 화살표가 자동으로 서클과 항목을 연결합니다. 사진과 항목 모두 별도의 표가 있습니다.티타늄의 정적 및 동적 드로잉/페인팅

필자는 그림을 그리기 위해 Ti.Paint를 사용했지만 손가락을 통한 동적 인 (수동) 그리기 만 지원합니다. 이 모듈은 선, 원 등과 같은 도형을 프로그램 적으로 그릴 수있는 방법이 없습니다. 또한 터치 이벤트를 제공하지 않으므로 사용자가 그리기를 중단했을 때이를 감지 할 수 없습니다. 그런 다음 Ti.Canvas를 사용했지만 정적 드로잉 만 지원합니다. 즉, 사용자가 손가락으로 동적으로 그릴 수 없으며 iOS 만 지원합니다. 이 일을하기 위해 터치 이벤트로 2 일 동안 많은 노력을했습니다. Ti.Canvas를 사용하여 터치로 그림을 그리는 코드는 다음과 같습니다.

 canvas.addEventListener('touchstart',function(e) { 
      canvas.begin(); 
      canvas.beginPath(); 
      canvas.moveTo(e.x,e.y); 
     }) 

     canvas.addEventListener('touchmove',function(e) { 
      canvas.lineTo(e.x,e.y); 
      canvas.stroke(); 
     }) 

     canvas.addEventListener('touchend',function(e) { 
      canvas.commit(); 
     }) 

하지만 불행히도이 코드는 작동하지 않습니다. 누군가이 문제를 어떻게 해결할 수 있는지 말할 수 있습니까? 정적 (프로그램 방식) 및 수동 (터치 방식) 도면을 모두 지원하는 모듈 또는 라이브러리가 존재합니다. 나는 매우 감사 할게. 감사.

답변

0

나는 내가 사용하는 touchend의 예가 있다는 것을 알고있다. IOS와 Android에서 동일하게 작동하지 않을 수있는이 예제 코드에서는 touchend의 예가 있습니다. http://developer.appcelerator.com/blog/2010/05/building-an-advanced-transaction-ui-with-titanium.html

Ti.Paint 모듈의 소스 코드를 사용할 수 있으며 원하는 기능을 추가 할 수 있습니다. https://github.com/appcelerator/titanium_modules/tree/master/paint

길을 가고 싶지 않은 경우 선을 만들 수있는 캔버스 모듈이 있지만 테스트하지는 않았습니다. 이것은 IOS에 특정한 것으로 보입니다. https://github.com/appcelerator/titanium_modules/tree/master/canvas/mobile/ios

Android의 경우 모듈이있는 것처럼 보입니다. https://marketplace.appcelerator.com/apps/5941?494596078

그래서 몇 가지 옵션을 살펴 보겠습니다.

+0

다음 모듈 중 어떤 모듈이 더 적합합니까? 선과 연결된 3 개의 정사각형으로 제어하고 싶습니다. 터치 이벤트는 iOS/Android에서 위치와 모양을 변경할 수 있습니다. 그 그리기 컨트롤은 사용자가 그리는 곳이 아닙니다 .. 그냥 모양을 변경합니다. – JRC