Я хотел бы добавить Будни в этот код

Хорошо, у меня есть следующий код:

   if (!clock_is_24h_style()) {
if (current_time->tm_hour <= 3)
set_container_image(&time_format_image, RESOURCE_ID_NBC, GPoint(0, 0));

else if (current_time->tm_hour == 4 && current_time->tm_min <= 29)
set_container_image(&time_format_image, RESOURCE_ID_ETODAY, GPoint(0, 0));

else if (current_time->tm_hour == 4 && current_time->tm_min >= 30)
set_container_image(&time_format_image, RESOURCE_ID_9NEWSMORN, GPoint(0, 0));

else if (current_time->tm_hour == 5)
set_container_image(&time_format_image, RESOURCE_ID_9NEWSMORN, GPoint(0, 0));

else if (current_time->tm_hour == 6)
set_container_image(&time_format_image, RESOURCE_ID_9NEWSMORN, GPoint(0, 0));

else if (current_time->tm_hour == 12 && current_time->tm_min <= 29)
set_container_image(&time_format_image, RESOURCE_ID_IMAGE_PM_MODE, GPoint(0, 0));

else if (current_time->tm_hour == 12 && current_time->tm_min >= 30)
set_container_image(&time_format_image, RESOURCE_ID_NBC, GPoint(0, 0));

else if (current_time->tm_hour == 13 && current_time->tm_min <= 29)
set_container_image(&time_format_image, RESOURCE_ID_WTC, GPoint(0, 0));

else if (current_time->tm_hour == 13 && current_time->tm_min >= 30)
set_container_image(&time_format_image, RESOURCE_ID_BEARS, GPoint(0, 0));

else if (current_time->tm_hour == 14 && current_time->tm_min <= 29)
set_container_image(&time_format_image, RESOURCE_ID_WTC, GPoint(0, 0));

else if (current_time->tm_hour == 14 && current_time->tm_min >= 30)
set_container_image(&time_format_image, RESOURCE_ID_BEARS, GPoint(0, 0));

else if (current_time->tm_hour == 15)
set_container_image(&time_format_image, RESOURCE_ID_NBC, GPoint(0, 0));

else if (current_time->tm_hour == 16)
set_container_image(&time_format_image, RESOURCE_ID_9NEWS4, GPoint(0, 0));

else if (current_time->tm_hour == 17)
set_container_image(&time_format_image, RESOURCE_ID_9NEWS5, GPoint(0, 0));

else if (current_time->tm_hour == 18 && current_time->tm_min <= 29)
set_container_image(&time_format_image, RESOURCE_ID_9NEWS6, GPoint(0, 0));

else if (current_time->tm_hour == 18 && current_time->tm_min >= 30)
set_container_image(&time_format_image, RESOURCE_ID_NN, GPoint(0, 0));

else if (current_time->tm_hour == 19)
set_container_image(&time_format_image, RESOURCE_ID_NBC, GPoint(0, 0));

else if (current_time->tm_hour == 20)
set_container_image(&time_format_image, RESOURCE_ID_WTC, GPoint(0, 0));

else if (current_time->tm_hour == 21)
set_container_image(&time_format_image, RESOURCE_ID_BEARS, GPoint(0, 0));

else if (current_time->tm_hour == 22)
set_container_image(&time_format_image, RESOURCE_ID_NBC, GPoint(0, 0));

else if (current_time->tm_hour == 23 && current_time->tm_min <= 34)
set_container_image(&time_format_image, RESOURCE_ID_9NEWS10, GPoint(0, 0));

else if (current_time->tm_hour >= 23 && current_time->tm_min >= 35)
set_container_image(&time_format_image, RESOURCE_ID_NBC, GPoint(0, 0));

else {
layer_remove_from_parent(&time_format_image.layer.layer);
bmp_deinit_container(&time_format_image);
}

Это делает так, чтобы изображение на часах изменялось в определенное время, что замечательно и прекрасно работает.

Тем не менее, код цикличен ежедневно, и делает это изо дня в день, и он точен только в будние дни (понедельник-пятница), и мне было интересно, как я могу сделать так, чтобы код применялся только к понедельнику-пятнице, тогда как отдельный код будет применяться в субботу и еще в воскресенье. Спасибо!

1

Решение

struct tm содержит член tm_wday он содержит день недели, где 0 — воскресенье, а 6 — суббота.

4

Другие решения

Не могли бы вы инкапсулировать свой код, изменяющий изображение в будний день, чтобы затем можно было создать набор субботнего изменяющего изображение кода и воскресного изменяющего изображение кода, а затем перейти к правильному набору изменяющего изображение кода при входе в эту процедуру, определив день недели и затем ветвление соответственно.

0

По вопросам рекламы [email protected]