Alternar cores de atributos da tela

Boa noite,

Estou finalizando a faculdade e para me formar preciso fazer aquele trabalho.

Nesse processo precisei criar uma função que parece simples mas está me dando dor de cabeça.

Meu aplicativo é para pessoas que tem baixa visão.
Então preciso que os botões e os textos alternem de cores de 3 em 3 segundos.
Pois muitas pessoas que tem dificuldades na visão Também são daltônicos.

iniciando deste código

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        button1 = (Button)findViewById(R.id.leitura);
        button1.getBackground().setColorFilter(new LightingColorFilter(233152155, 222222222));
        button1.setOnClickListener(new View.OnClickListener() {
			@Override
			public void onClick(View v) {
				CarregaResultado();
			}
		});
    }

Neste caso o Botão alterne cores diferentes, aguardando o tempo de 3 segundos.

Grato