0

我为我想在我的 Titanium 应用程序中重用的按钮创建了一个控制器。我在我的一个窗口中使用 createController 并将其添加到窗口中。到目前为止,一切都很好。

但是,该按钮似乎有一个完整的窗口高度,我找不到改变它的方法。我错过了什么?在我的文件下面:

view button.xml

<Alloy>
    <View id="generalButtonContainer">
        <View id="generalButton" class="generalButton" onClick="callback" >
            <Label class="generalButtonLabel" id="generalButtonLabel" />
            <ImageView class="generalButtonIcon" />
        </View>
    </View>
</Alloy>

button.tss

".generalButton": {
    height: 60,
    borderRadius: 2,
    backgroundColor: '#5ba7e6',
    left: 10,
    right: 10
}

".generalButtonLabel": {
    color: '#ffffff',
    font: {
        fontSize: 16
    },
    left: 15
}


".generalButtonIcon": {
    image: '/images/generic/arrow-thin-right-white.png',
    height: 15,
    width: 15,
    top: 22,
    right: 15
}
"#generalButtonContainer": {
    width: 320,
    height: Ti.UI.SIZE
}

在这里我将它包含在我的父窗口中

Alloy.createController('button',{text: 'signup.button.continue'});
$.signupButtonContainer.add(buttonView.getView());

现在,即使我指定了一个高度,(也在父窗口中:)signupButtonContainerTi.UI.SIZE仍然得到一个完整的窗口高度视图。

我该如何解决这个问题?

编辑:如果您缺少任何信息,请询问!包含大量信息的复杂问题

4

1 回答 1

1

我没有看到任何明显的东西。调试这些布局问题可能涉及一些试验和错误。我建议两种策略。

1) 检查 Resources/ platform /alloy/controllers/ controller.js中生成的代码,看看那里是否有明显的东西。请记住,对于您看到的那些没有显式值的组件,各种布局组件的默认高度/宽度。

2) 我建议您使用 LiveView 或 TiShadow 以便您可以快速查看布局更改。然后,开始将各种元素的背景颜色设置为明显的颜色(粉红色、橙色、绿色等字符串效果很好),以查看哪些元素填充了屏幕。

于 2014-08-28T18:45:24.820 回答