我前天晚上又可以思考四柱安卓的改进,主要有下面三点:
一,万年历中,年月日不用用户手工输入,用Combox下拉形式,其中年份四位数上下五千年,可以分成两个下拉,
一个是世纪数,一个是世纪内的数,这样就完美了,以前弱智呀,一时想不到呀
二,寿星万年历中,如2013-7-7本是小暑,却显示什么抗日战争纪念日,要节气优先显示,节气不可以被覆盖。
三,关于公元前的生日在查询时的算法
因为我保存在sqlite数据库中的生日是上下五千年的,不可能是datetime类型,所以以文本形式保存的,如何
select中where可以查公元前就不易了。我反复思考,认为可以这样:
公元前的生日采用补数法表示。就是凡是以“-”开头的生日,其正常是“0,1,2,3,4,5,6,7,8,9”,现
在一一对应映射成倒数“9,8,7,6,5,4,3,2,1,0”,这样在sqlite中where中直接用字符串之大于小于直
接查出,再用一个正常列显示出原来正常生日就成了。这样公元前的生日起始和终止的查询也OK了。
一想到要修改,又要辛苦,我就想慢慢来了。