Titanium Android:calendarViewShown不能运行Android 5.x及更高版本

时间:2017-02-07 11:34:50

标签: android android-5.0-lollipop appcelerator-titanium android-calendar android-datepicker

我一直在尝试使用Android中的日期选择器,它完全正常,我的问题在于 calendarViewShown 属性。我需要在android的所有版本中使用旧式日期选择器,这在android 4及更低版本中默认工作,但是当我们在android 5上运行应用程序时,默认日期选择器显示日历而不是我想要使用旧日期选择器。 我已经使用了 calendarViewShown 这个属性,如下图所示,我没有得到预期的结果。

<Alloy>
<Window class="container">
<View backgroundColor="black" height="Ti.UI.SIZE" width="Ti.UI.SIZE">
<Picker calendarViewShown="false" nativeSpinner="true" type="Ti.UI.PICKER_TYPE_DATE" datePickerMode="spinner"></Picker>
</View>
</Window>
</Alloy>

1 个答案:

答案 0 :(得分:0)

我终于找到了解决此问题的方法,我们必须使用主题与选择器来使用defaulf日期选择器。看看以下代码:

**** xml代码 ****

<Alloy>
    <Window id="win" title="" backgroundColor="transparent">
        <View height="100%" width="100%" backgroundColor="transparent" id="backView"></View>
        <View height="Ti.UI.SIZE" layout="vertical" backgroundColor="#f2f2f2" width="90%">
            <Label id="currentDate" top="10" color="#000" bottom="10" left="20"></Label>
            <View height="1" left="0" right="0" backgroundColor="#d9d9d9"></View>
            <View id="pickerView" height="Ti.UI.SIZE"></View>
            <Picker calendarViewShown="false" nativeSpinner="true" type="Ti.UI.PICKER_TYPE_DATE" backgroundColor="#f2f2f2" id="androidPicker" width="Ti.UI.FILL"></Picker>
            <View height="1" left="0" right="0" backgroundColor="#d9d9d9"></View>
            <View height="40dp">
                <View height="40dp" width="50%">
                <Label id="cancelButton" color="#000" right="20dp" onClick="closeWindow">Cancel</Label>
                </View>
                <View height="40dp" width="50%">
                    <Label id="doneButton" color="#000" onClick="getDatePicker">Done</Label>
                </View>
            </View>
        </View>
    </Window>
</Alloy>

在platfrom&gt;&gt;中的主题文件中粘贴下面的样式custometheme.xml

**** 主题 ****

<style name="Theme.Transparent" parent="@android:style/Theme.Holo.Light.Dialog">
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:backgroundDimEnabled">true</item>
</style>

希望它也适用于其他人。