2016-07-14 3 views
-1

У меня ошибка: не удается разрешить символ «postDelayed». В:Не удается разрешить символ «postDelayed»

handler.postDelayed(updateCurrentTime, 500); 

Это какой-то мой код:

package com.example.hubert.myapplication; 

import android.content.Intent; 
import android.os.Bundle; 
import android.os.Handler; 
import android.support.v7.app.AppCompatActivity; 
import android.view.View; 
import android.widget.TextView; 

public class ClickActivity extends AppCompatActivity { 
    Handler handler = new Handler(); 

    Runnable updateCurrentTime = new Runnable() { 
     @Override 
     public void run() { 
      money = money + 100; 
      handler.postDelayed(this, 1000); 
     } 
    }; 
    handler.postDelayed(updateCurrentTime, 500); 
(...) 
} 

Я читал другие подобные вопросы и весь ответ плохо.

+1

Метод [конечно, существует] (https://developer.android.com/reference/android/os/Handler.html#postDelayed (java.lang.Runnable,% 20long)), как это было с 2008 года. – CommonsWare

+6

Если вы не вырезали слишком много кода, похоже, вы пытаетесь выполнить 'handler # postDelayed (Runnable, long)' вне метода. Попробуйте положить его в один. – nbokmans

+0

Объявите свой объект 'Handler' глобальным .. не местным –

ответ

1

Вы должны указать свое заявление в методе.

Подобно этому:

@Override 
public void onCreate(Bundle bundle) { 
    super.onCreate(bundle); 
    setContentView(R.layout.activity_main); 

    handler.postDelayed(updateCurrentTime, 500); 

} 
+0

Спасибо, очень! :) –