2013-07-17 4 views
1

이미지의 회전에 앵커 포인트를 어떻게 설정할 수 있습니까?티타늄 회전을위한 앵커 포인트 설정

여기 동안, 나는 첫 번째 이미지에 w.r.t 회전 된/경 방식으로 다른 이미지를 배치해야합니다. 그래서 첫 번째 이미지에 대한 앵커 포인트를 설정해야합니다.

+0

당신은 무엇을 시도? 몇 가지 코드를 보여줄 수 있습니까? [이 문서에서 체크 아웃 했습니까?] (http://docs.appcelerator.com/titanium/latest/#!/api/Titanium.UI.View-property-anchorPoint) –

답변

3

안드로이드에서 변환 매트릭스에 앵커 포인트를 설정해야합니다. iOS에서 회전하려고하는보기에 고정 점을 설정해야합니다.

중요 문서화되지 않은 동작 : 나는 일주일 동안이 고민하고 발견했습니다 다음 : 당신이 먼저가, 너비 또는 높이의 설정하거나 설정하지 않고보기로 anchorpoint을 설정하려고하면 Ti.UI.SIZE에 앵커 포인트는 항상 0,0이됩니다.

당신은 일해야이 코드를 시도 할 수 있습니다. Haven이 테스트했지만 아이디어를 얻을 수 있습니다. 이 코드는 두 플랫폼 모두에서 작동해야합니다.

var anchor_x = 0.5; 
var anchor_y = 0.5; 

var view = Ti.UI.createView({ 
    // ALWAYS SET THE HEIGHT AND WIDTH!!!! 
    // IF NOT ANCHOR WILL BE CALCULATED FROM WIDTH = 0 AND HEIGHT = 0 
    width: Ti.UI.FILL 
    height: Ti.UI.FILL 
}); 

// It it's ios (iPad or iPhone) 
if (Ti.Platform.platform == 'iPhone OS') 
    view.anchorPoint = {x: anchor_x, y: anchor_y}; 

var transform; 
// If it's android, create the 2DMatrix with the desired anchorpoint. 
if (Ti.Platform.platform == 'android') 
    transform = Ti.UI.create2DMatrix({anchorPoint: { x: anchor_x, y: anchor_y }}); 
else 
    transform = Ti.UI.create2DMatrix(); 

// Apply rotation 
transform = transform.rotate(90); 

// Apply transformation to your view. 
view.transform = transform;