Titanium Android中的TextField格式(填充)问题

时间:2015-05-08 04:50:52

标签: android formatting textfield titanium-mobile titanium-android

我正面临在Titanium Android中格式化简单文本字段的问题。

问题:我无法查看输入的文本字段输入值。如果我打印日志,它会进入但不可见。在某些设备中,我得到了截止文本。

以下是我的代码:

在我的.js文件中,我有如下文本字段:

var t1 = Titanium.UI.createTextField({
        value : Titanium.App.Properties.getString("userID"),
        left : 130,
        top : 25,
        height : 30,
        width : 140,
        color : 'black',
        font : {
            fontSize : 12
        },
        borderStyle : Titanium.UI.INPUT_BORDERSTYLE_ROUNDED
    });

在我的tiapp.xml文件中:

<android xmlns:android="http://schemas.android.com/apk/res/android">
    <manifest>
        <application android:theme="@style/Theme.Titanium"/>
        <supports-screens android:anyDensity="false"
            android:largeScreens="false"
            android:normalScreens="false" android:resizeable="false"
            android:smallScreens="false" android:xlargeScreens="false"/>
    </manifest>
</android>

已尝试解决方案:我尝试了链接中提供的解决方案:

它表示您需要将TextField的高度设置为“ Ti.UI.SIZE ”+在您的tiapp.xml文件中添加<supports-screens android:anyDensity="true"/> +在您的添加<property name="ti.ui.defaultunit">dp</property> tiapp.xml文件。

如果我将文本字段的高度设置为“ Ti.UI.SIZE ”,它会显示输入值,但文本字段的高度对于屏幕来说太大了,因为我的特定屏幕中有多个文本字段,这个高度看起来太奇怪了。

任何帮助将不胜感激。

感谢。

更新:在Android 4.4.4和5.0操作系统中观察到问题。对于其他,它的工作正常。

1 个答案:

答案 0 :(得分:4)

最后,我使用platform folder--> android folder --> res folder--> values folder --> mytheme.xml

下添加的名为mytheme.xml的自定义主题解决了这个问题

在mytheme.xml中:

 <?xml version="1.0" encoding="utf-8"?>
    <resources>
    <!-- Define a theme using the AppCompat.Light theme as a base theme -->
    <style name="Theme.MyTheme" parent="@style/Theme.Titanium">
    <!-- For Titanium SDK 3.2.x and earlier, use the Holo.Light or Light theme
    <style name="Theme.MyTheme" parent="@android:style/Theme.Holo.Light">
    -->
        <item name="android:editTextStyle">@style/editText</item>
    </style>

    <style name="editText" parent="@android:style/Widget.EditText">
        <item name="android:textCursorDrawable">@null</item>   
        <item name="android:textColor">#000000</item>
        <item name="android:paddingLeft">10dp</item>
        <item name="android:paddingRight">10dp</item>
        <item name="android:background">#FFFFFF</item>
        <item name="android:gravity">center_vertical</item>
        <item name="android:layout_width">wrap_content</item>
    </style>
</resources>

在tiapp.xml中:

在android标签下:

<android xmlns:android="http://schemas.android.com/apk/res/android">
    <manifest>
        <application android:theme="@style/Theme.MyTheme"/>
</manifest>
</android>