Обновление TextView с помощью таймера

Я пишу игру жанра "кликер" и хочу сделать функцию с "пассивным доходом". У меня получилось сделать прибавление каждую секунду с помощью таймера, но никак не получается обновлять TextView каждую секунду. Я пытался придавать TextView значение через таймер, но при примерно такой реализации:

    Timer timer1 = new Timer();
    int begin1 = 0;
    int timeInterval1 = 1000;
    static public int mymoney = 100;
    static public TextView moneyview;
    
    @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            moneyview = (TextView) findViewById(R.id.viewmoney);
            timer1.scheduleAtFixedRate(new TimerTask() {
            @Override
            public void run() {
                moneyview.setText(mymoney + " ");
            }
        }, begin1, timeInterval1);
    }

программа крашится, причем я ставил задержку в пять секунд, и крашилось именно при использовании

moneyview.setText(mymoney + " ");

при этом в

clickmoney.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                mymoney += moneytoclick;
                moneyview.setText(mymoney + " ");

все работает корректно и при нажатии кнопки счетчик обновляется. Что делать - не знаю, по идее можно как то через потоки реализовать, но хочется по простому, через таймер)


Ответы (1 шт):

Автор решения: DrMcSheen
 @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            moneyview = (TextView) findViewById(R.id.viewmoney);
            new CountDownTimer(10000, 1000) {
            public void onTick(long millisUntilFinished) {
                moneyview.setText(mymoney + " ");
            }
            public void onFinish() {
            }
        }.start();
}
→ Ссылка