Если я правильно понял, то вам не надо запускать новый поток, а надо изменить то, каким цветом рисуете в уже существующем потоке. Например, держать в классе переменную, отвечающую за цвет, и при нажатии менять ее значение.
Написать такое не сложно. Проблема скорее в том, что бы держать расписание актуальным.
Например, можно такой набор:
Язык - Java
Карты - google-maps
Для базы данных - FireBase
Расчитывай на ширину экрана >640px (от 320dp). Но вообще, пиши везде в dp и sp значения, добавляй на экраны скроллы и проблем должно быть не много. + в студии, в экране редактирования xml можно макет потянуть на разную ширину и посмотреть, что с ним будет.