Nativescript 如何设置RadDataForm日期选择器的日/月/年选择器的样式

Nativescript 如何设置RadDataForm日期选择器的日/月/年选择器的样式,nativescript,nativescript-angular,Nativescript,Nativescript Angular,我在Nativescript Angular应用程序中有一个RadDataForm 此RadDataForm显示我的一个属性的日期选择器 我已经读过了,但是它缺少了关于如何设置我更改日期时显示的“轮子文本”样式的部分。(还是我遗漏了什么?) 它们保持黑色,但我需要另一种颜色(即白色)根据 UIDatePicker的外观不可自定义 您应该使用自动布局将日期选择器集成到布局中。 虽然可以调整日期选择器的大小,但它们应该在其指定的时间使用 内在内容大小 然而,你可以设置的东西很少。我为孩子们创造了一个

我在Nativescript Angular应用程序中有一个RadDataForm

此RadDataForm显示我的一个属性的日期选择器

我已经读过了,但是它缺少了关于如何设置我更改日期时显示的“轮子文本”样式的部分。(还是我遗漏了什么?)

它们保持黑色,但我需要另一种颜色(即白色)

根据

UIDatePicker的外观不可自定义

您应该使用自动布局将日期选择器集成到布局中。 虽然可以调整日期选择器的大小,但它们应该在其指定的时间使用 内在内容大小

然而,你可以设置的东西很少。我为孩子们创造了一个游乐场

在html中

<RadDataForm [source]="album" (editorUpdate)="dfEditorUpdate($event)">
            <TKEntityProperty tkDataFormProperty name="albumName" displayName="Name of Album"
                index="0"></TKEntityProperty>
            <TKEntityProperty tkDataFormProperty name="bandName" displayName="Name of Band"
                index="1"></TKEntityProperty>
            <TKEntityProperty tkDataFormProperty name="year" displayName="Release Year"
                index="2"></TKEntityProperty>
            <TKEntityProperty tkDataFormProperty name="myRating" displayName="My Rating"
                index="3"></TKEntityProperty>
            <TKEntityProperty tkDataFormProperty name="owned" displayName="Do I Own This?"
                index="4"></TKEntityProperty>
            <TKEntityProperty tkDataFormProperty name="birthDate" index="5">
                <TKPropertyEditor tkEntityPropertyEditor type="DatePicker">
                    <TKPropertyEditorStyle tkPropertyEditorStyle strokeColor="#00695c"
                        strokeWidth="2" fillColor="#4db6ac" labelHidden="false"
                        labelTextSize="18" ios:labelFontName="Times New Roman"
                        android:labelFontName="sans-serif-light"
                        labelFontStyle="Italic" labelPosition="Left"
                        labelWidth="60" labelTextColor="#ffffff"></TKPropertyEditorStyle>
                </TKPropertyEditor>
            </TKEntityProperty>
        </RadDataForm>

public-dfEditorUpdate(args:DataFormEventData){
if(androidApplication){
开关(args.propertyName){
案例“appVolume”:
打破
}
}否则{
常量实体属性:实体属性=
(args.object).getPropertyByName(args.propertyName);
开关(entityProperty.editor.type){
案例“日期选择器”:
const coreEditor=args.editor.editor;
coreEditor.subviews[0]。backgroundColor=colorLight.ios;
coreEditor.subviews[0].setValueForKeyPath(colorWhite.ios,'textColor');
打破
}
}
}

说UIDatePicker的外观是不可定制的。这似乎有点错误,因为必须有一种方法来实现白色字体的黑色主题(即使对于日期选择器也是如此)苹果今天刚刚宣布了黑色主题,对于ios,你可以参考这个答案。显然,这只会使日期选择器的背景变成红色。找到了日期选择器的解决方案。。。。。但我正在和UIPickerView斗争。是的,我还尝试了其他几个选项,例如
entityProperty.editor.propertyEditorStyle.strokeColor=新颜色(“橙色”)仅在表单中更改笔划颜色我认为当用户单击DatePicker时,它会打开Spinner,我们需要找到一种方法在那里更改textColor
import { Color } from "tns-core-modules/color";
import { EntityProperty, DataFormEventData, RadDataForm } from "nativescript-ui-dataform";

let colorLight = new Color("#ff0000");
let colorWhite = new Color("#ffffff");
let colorDark = new Color("#4CAF50");
let colorGray = new Color("#F9F9F9");
public dfEditorUpdate(args: DataFormEventData) {
        if (androidApplication) {
            switch (args.propertyName) {
                case "appVolume":
                    break;
            }
        } else {
            const entityProperty: EntityProperty =
                (<RadDataForm>args.object).getPropertyByName(args.propertyName);

            switch (entityProperty.editor.type) {
                case "DatePicker":

                    const coreEditor = args.editor.editor;
                    coreEditor.subviews[0].backgroundColor = colorLight.ios;
                    coreEditor.subviews[0].setValueForKeyPath(colorWhite.ios, 'textColor');


                    break;

            }
        }
    }