围绕其中心旋转标签

时间:2013-07-18 10:17:17

标签: rotation label titanium center

我正在尝试围绕其中心旋转标签并使用以下代码。然而,它并没有围绕它的中心旋转,而是绕着视线旋转。我该如何解决这个问题?

var singleLabel = Titanium.UI.createLabel({
    backgroundColor:'red',
    text: i+1,
    top: 100,
    width: 35,
    height:20,
});

singleLabel.setAnchorPoint({x: 0,y:0});
var rotateFirst = Titanium.UI.create2DMatrix().rotate(270);
singleLabel.transform = rotateFirst;

1 个答案:

答案 0 :(得分:2)

Titanium视图的定位点定义如下:

enter image description here

  • x属性 x ax
  • 匹配
  • y属性 y ax
  • 匹配

因此,如果您想围绕它的中心旋转视图/标签/ ...,则必须使用{ x: 0.5, y: 0.5 }作为定位点。

如果您想说服自己,可以使用以下代码:

var self = Ti.UI.createView();

var label = Ti.UI.createLabel({
    text:        'Reference text',
    color:       '#000000',
    borderColor: '#000000'
});
self.add(label);

var label2 = Ti.UI.createLabel({
    text:        'Reference text',
    color:       '#FF0000',
    borderColor: '#FF0000'
});
self.add(label2);

var rotation = Ti.UI.create2DMatrix({rotate: 90});
label2.setAnchorPoint({x: 1,y:1});
label2.transform = rotation;