Appcelerator PIcker 调整大小和提示文本问题

Appcelerator PIcker Sizing & Hint Text Problems

好的,在 Appcelerator Alloy 中设计表单让我有点发疯。 :) 我在 Mac 上使用带有最新 SDK 的最新版本。以下是两个平台上相同形式的屏幕截图。该表单使用具有相同 .tss 样式的相同基本选择器标记:宽度:45% 和高度:40。

ANDROID 问题: Android Form

  1. 日期选择器无法使用。普通的采摘机工作得很好。但是,一旦将其设置为日期类型,您就会感到奇怪。

IOS 9.3 问题: iOS Form

  1. None 的选择器类型遵循宽度设置。高度很好,因为每个表单元素都具有相同的高度设置并且它们统一显示。我也曾尝试将宽度属性应用于唯一的 pickerColumn 但没有成功。

  2. 提示文本和选择器文本都是黑色的。 iOS 不让你根据我的理解调整提示文本颜色。但是,当应用程序最初加载时,它会以白色背景加载。如果我能以某种方式让 Alloy 加载黑屏(或深色主题),我怀疑这个问题会得到解决。据我所知,Tss 样式对背景文本没有影响,因为在应用样式时页面已经加载。

提前感谢您的任何见解。希望这不是一个错误。

编辑: 这是代码。太基础了,我原来省略了。

<Alloy>
    <Window class="container">
        <View>
            <Picker id="gender" selectionIndicator="true">
                <PickerColumn id="genderPick">
                    <PickerRow title="Gender"/>
                    <PickerRow title="Male"/>
                    <PickerRow title="Female"/>
                </PickerColumn>
            </Picker>

            <Picker id="birthday" type="Ti.UI.PICKER_TYPE_DATE" />
        </View>
    </Window>
</Alloy>

风格:

"Picker": {
    width: "45%",
    height: 40,
    backgroundColor: "#222",
    color: "#fff"
}

"PickerColumn": {
    width: "100%",
    height: 40,
    backgroundColor: "#222",
    color: "#fff"
}

我在使用 date/time 选择器时遇到了一些问题。与您的不完全相同(没有看到您的代码)。但是,我通过使用 dialog 来解决它。也许这对你也有用?

您也可以

/约翰

提示文字颜色请参考:你可以用SearchBarAttributedString/AttributedHintText(哪个更好选项)或使用 textfieldlabel.

创建 view

如果没有任何代码示例,很难找到问题的解决方案。但是,阅读 Appcelerator Documentation 可能会有帮助:

Note: you can only set the columns property for the plain picker. If you set the type property to anything else except Titanium.UI.PICKER_TYPE_PLAIN, you cannot modify the picker's columns.

它可能看起来像 DATE_AND_TIMEDATE 类型的选择器不具有与 PLAIN 类型相同的自定义可能性。

关于您的 hintText 问题,Appcelerator 将在其下一个版本中为 iOS 添加 hintTextColor。在那之前,我更喜欢 AttibutedStrings/AttributedHintText 作为解决方法。有关如何使用它的示例,请查看

几经周折,终于发现是个bug。百分比宽度不适用于 iOS 上的拾取器,即使宽度应该是可设置的。我将其作为 Jira 系统中的错误提交,因此在他们修复它之前,这个案例将被关闭。 :(