

Richard Topchii en Telegram
Calendarkit es una biblioteca de interfaz de usuario de calendario rápido para iOS y Mac Catalyst. Se parece a la aplicación Apple Calendar fuera de la caja, al tiempo que permite la personalización cuando es necesario. Calendarkit está compuesto por múltiples módulos que se pueden usar juntos o de forma independiente.
Si tiene una pregunta de programación sobre cómo usar Calendarkit en su aplicación, cree un nuevo problema de GitHub con la etiqueta de preguntas.
Consulte la aplicación de muestra como referencia.
Cree un nuevo problema de la plantilla para informar un error o solicitar una nueva función.
Video
Aplicación de muestra
Calendarkit se puede instalar con Swift Package Manager o con Cocoapods.
La forma preferida de instalar Calendarkit es a través del Swift Package Manager.
https://github.com/richardtop/CalendarKit.git ) y haga clic en Siguiente .Agregar dependencias de paquetes a su aplicación
Para instalarlo, agregue la siguiente línea a su podfile:
pod 'CalendarKit'Agregar vainas a un proyecto XCode
DayViewControllerEventDataSource para mostrar eventos. Calendarkit requiere que EventDataSource devuelva una variedad de objetos que se ajusten al protocolo EventDescriptor , especificando toda la información necesaria para mostrar un evento en particular. Usted es libre de usar una clase Event predeterminada como modelo o crear su propia clase que se ajuste al protocolo EventDescriptor .
// Return an array of EventDescriptors for particular date
override func eventsForDate ( _ date : Date ) -> [ EventDescriptor ] {
var models = myAppEventStore . getEventsForDate ( date ) // Get events (models) from the storage / API
var events = [ Event ] ( )
for model in models {
// Create new EventView
let event = Event ( )
// Specify DateInterval
event . dateInterval = DateInterval ( start : model . startDate , end : model . endDate )
// Add info: event title, subtitle, location to the array of Strings
var info = [ model . title , model . location ]
info . append ( " ( datePeriod . beginning! . format ( with : " HH:mm " ) ) - ( datePeriod . end! . format ( with : " HH:mm " ) ) " )
// Set "text" value of event by formatting all the information needed for display
event . text = info . reduce ( " " , { $0 + $1 + " n " } )
events . append ( event )
}
return events
}Después de recibir una variedad de eventos para un día en particular, Calendarkit manejará el diseño y la visualización de la vista.
Para responder a la entrada del usuario, anule Mehtods de DayViewDelegate , por ejemplo:
override func dayViewDidSelectEventView ( _ eventView : EventView ) {
print ( " Event has been selected: ( eventview . data ) " )
}
override func dayViewDidLongPressEventView ( _ eventView : EventView ) {
print ( " Event has been longPressed: ( eventView . data ) " )
} Calendarkit admite la localización y utiliza la configuración nacional predeterminada de iOS para mostrar los nombres de los meses y del día. El primer día de la semana también se selecciona de acuerdo con la ubicación de iOS.
Por defecto, Calendarkit se parece a la aplicación Apple Calendar y admite totalmente el modo oscuro. Si es necesario, el aspecto de Calendarkit se puede personalizar fácilmente. Los pasos para aplicar un estilo personalizado son los siguientes:
CalendarStyle (o copie uno existente)updateStyle con el nuevo CalendarStyle . let style = CalendarStyle ( )
style . backgroundColor = UIColor . black
dayView . updateStyle ( style ) 
La lista de características actualmente en desarrollo se puede ver en la página de problemas.
Antes de contribuir, revise las pautas y el estilo de código.
Richard Topchii
Calendarkit está disponible bajo la licencia MIT. Consulte el archivo de licencia para obtener más información.