我正在开发一个需要我们自己的自定义日历视图的项目。我一直在试图找出解决这个问题的最佳方法。 我正在考虑使用Master xml文件来定义日历的基本布局,然后使用辅助xml文件,并将其作为对象数组嵌入到日历的每个单元格中。
不确定这是否可行,或者这是否是解决此问题的最佳方法?
干杯
答案 0 :(得分:1)
我最近使用TableLayout创建了一个Month布局。
我考虑到你需要6x7天一个月才能处理所有可能的情况。 (本月的第一天是星期日,本月的最后一天是星期一等。)
根据给定日期(比如8月3日),我计算要显示的第一天
date = 3rd of August
firstDate = first day of month based on date
while( firstDate is not a monday )
firstDate = present date
然后我计算要显示的最后一天:
lastDate = last day of month based on date
while( lastDate is not a Sunday )
lastDay = following date
这为我提供了从firstDate
到lastDate
然后我以编程方式创建6个TableRow
,其中有7天 - TextView
或其他。如果您不想动态创建太多布局,则可以在XML文件中声明它。要记住的一件事是为layout_weight
设置TextViews
,以便它们都大小相同,以创建一个漂亮的网格。
如果您需要的更像是一天或一周的布局,那么挑战就会更加艰难。
答案 1 :(得分:0)
Android有一个用于完成所有数学运算的工具来查找一个月内的日子。我想使用带有 android.util.MonthDisplayHelper 的gridview应该有效。