在 nativescript 中使用 RadDataForm 聚焦时更改文本字段的线条颜色

Posted

技术标签:

【中文标题】在 nativescript 中使用 RadDataForm 聚焦时更改文本字段的线条颜色【英文标题】:Change line color of text field when focused using RadDataForm in nativescript 【发布时间】:2018-06-25 02:18:27 【问题描述】:

我在 nativescript 中使用 telerik pro ui 库,当专注于适合设计时,我很难改变文本字段的底线颜色

我想改变线条的默认蓝色

当前渲染的文本字段如下图所示

模板视图的代码是

<GridLayout rows="100, *" row="1" class="m-x-10 m-t-75">
                <RadDataForm #loginFormElement [source]="loginForm" [isReadOnly]="isLoading" row="0" class="fa">

                    <TKEntityProperty tkDataFormProperty name="email" displayName="" hintText="example@gmail.com" imageResource="res://fa_user" required="true"
                        index="0">
                        <TKPropertyEditor class="fa" tkEntityPropertyEditor type="Email">
                            <TKPropertyEditorStyle tkPropertyEditorStyle labelHidden="true"  labelWidth="0"></TKPropertyEditorStyle>
                        </TKPropertyEditor>
                        <TKNonEmptyValidator tkEntityPropertyValidators errorMessage="البريد الالكتروني مطلوب"></TKNonEmptyValidator>
                        <TKEmailValidator tkEntityPropertyValidators errorMessage="البريد الالكتروني غير صحيح"></TKEmailValidator>
                    </TKEntityProperty>

                    <TKEntityProperty tkDataFormProperty name="password" displayName="&#xf023;" hintText="كلمة المرور" required="true" index="1">
                        <TKPropertyEditor tkEntityPropertyEditor type="Password">
                            <TKPropertyEditorStyle class="fa" tkPropertyEditorStyle labelHidden="false" labelTextSize="18" labelFontName="FontAwesome"
                                labelPosition="Left" labelWidth="30" labelTextColor="#999"></TKPropertyEditorStyle>
                        </TKPropertyEditor>
                        <TKNonEmptyValidator tkEntityPropertyValidators errorMessage="كلمة المرور مطلوبة"></TKNonEmptyValidator>
                    </TKEntityProperty>
                </RadDataForm>
                <Button class="form-submit-button bg-light-green m-y-25 m-l-5 m-r-5" [text]="'تسجيل دخول'" (tap)="onSigninButtonTap()" row="1"></Button>
            </GridLayout>

【问题讨论】:

【参考方案1】:

蓝色是所有 android 输入字段的默认强调色。您可以转到:App_Resources -> Android -> values -> colors.xml 文件并将 ns_accent 更改为您的颜色。您还可以自定义其他颜色。 目前我正在尝试弄清楚如何更改 raddataform 输入字段中的字体颜色。

【讨论】:

您可以将 RadDataForm 编辑器设置为如下&lt;TKEntityProperty tkPropertyGroupProperties name="name"&gt; &lt;TKPropertyEditor tkEntityPropertyEditor type="Text"&gt; &lt;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="#00695c"&gt;&lt;/TKPropertyEditorStyle&gt; &lt;/TKPropertyEditor&gt; &lt;/TKEntityProperty&gt; 是的,我知道。但是没有一个属性会改变输入文本的颜色。我可以更改背景颜色或标签颜色,但没有输入字段文本颜色。我错过了什么吗?哪个参数代表输入文本颜色?填充颜​​色是背景,笔划应该是下划线?在我的情况下,它实际上并没有改变颜色。 我也在为 RadDataForm 编辑器设置样式而苦苦挣扎,所以最后我切换到普通的 TextField 并使用 css 而不是 RadDataForm 来设置样式

以上是关于在 nativescript 中使用 RadDataForm 聚焦时更改文本字段的线条颜色的主要内容,如果未能解决你的问题,请参考以下文章

在 Nativescript 代码共享项目中使用 Angular 库

是否可以在 NativeScript 中使用 Cordova 插件?

如何在 NativeScript 中使用原生 API?

带有 nativeScript 的 Mapbox

在 nativescript-vue 中使用 Font Awesome

在 Nativescript-Vue 中使用 FontAwesome