override error android studio

I'm doing an Android development course using Android Studio but I'm getting a @Override error in one of the examples that I tried to copy/repeat.

Here the code where I get the error

Handler handler = new Handler(){
    @Override //here I get an error, that is not overriding a class
    public void handlerMessage(Message msg) {
        TextView JeroensText = (TextView) findViewById(R.id.JText);
        JeroensText.setText("Lekker bezig!");
    }
};

Anybody how to solve it?

Upvotes: 0

Views: 7399

Answers (3)

vijay_t
vijay_t

Reputation: 786

Its just a simple miss - remove that extra 'r' from your hanlderMessage method.

Since there is no 'handlerMessage(Message)' method for Handler. Use either with Callback

Handler handler = new Handler(new Handler.Callback () {
    @Override
    public boolean handleMessage(Message msg) {
        // handle message here
        return true;
    }
});

or

Handler handler  = new Handler () {
    @Override
    public void handleMessage(Message msg) {
        // handle message herer
    }
};

Upvotes: 0

piotrek1543
piotrek1543

Reputation: 19351

In both cases:

    Handler handler = new Handler(new Handler.Callback () {
        @Override
        public boolean handleMessage(Message msg) {
            TextView JeroensText = (TextView) findViewById(R.id.JText);
            JeroensText.setText("Lekker bezig!");
            return false;
        }
    });

}

and

    Handler handler  = new Handler () {
        @Override
        public void handleMessage(Message msg) {
            TextView JeroensText = (TextView) findViewById(R.id.JText);
            JeroensText.setText("Lekker bezig!");
        }
    };

as you can see there is handleMessage() method, not handlerMessage().

Hope it help

Upvotes: 2

Rafael
Rafael

Reputation: 3122

There's no handlerMessage(Message message) method on android.os.Handler class, you should override handleMessage(Message message) method (without the 'r')

Upvotes: 2

Related Questions