Tem um problema ao remover TextViews de um LinearLayout programaticamente

Estou adicionando programaticamente TextViews a um LinearLayout e excluindo-os ao toque. Tudo funciona bem, exceto quando o último TextView é tocado, ele não é removido. Se eu fizer qualquer outra coisa na tela como me livrar do teclado ou rolar para baixo, o último TextView será excluído, o que me faz pensar que é um problema de atualização, mas não tenho idéia de como resolver iss

Aqui estão alguns dos códigos que estou usando:

final TextView tv1 = new TextView(this);
tv1.setText("Test");

tv1.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {

        linearlayout1.removeView(tv1);

    }
});

Também adicionei este código para tentar resolver o problema, mas não mudou nada:

if (linearlayout1.getChildCount() == 1) {
    linearlayout1.removeAllViewsInLayout();
}

questionAnswers(1)

yourAnswerToTheQuestion