2016-04-13 2 views
1

Я пытаюсь переопределить несколько методов из класса AbsSeekBar. Тем не менее, Android Studio подчеркивает super.methodname() с сообщением, упомянутым в заголовке, и @Override с «Метод не переопределяет метод из его суперкласса», хотя метод находится прямо там. Пример кода:Android: «Не удается разрешить метод« x() »« при переопределении методов суперкласса

Подкласс:

import android.widget.AbsSeekBar; 

public class VerticalSeekBar extends AbsSeekBar { 

    // Constructors, work fine 
    ... 

    @Override 
    void onProgressRefresh(float scale, boolean fromUser, int progress) { 
     super.onProgressRefresh(scale, fromUser, progress); 

     if (mOnSeekBarChangeListener != null) { 
      mOnSeekBarChangeListener.onProgressChanged(this, progress, fromUser); 
     } 
    } 

    ... 
} 

Код суперкласса:

public abstract class AbsSeekBar extends ProgressBar { 

    // Some methods 
    ... 

    @Override 
    void onProgressRefresh(float scale, boolean fromUser, int progress) { 
     super.onProgressRefresh(scale, fromUser, progress); 

     final Drawable thumb = mThumb; 
     if (thumb != null) { 
     setThumbPos(getWidth(), thumb, scale, Integer.MIN_VALUE); 

     // Since we draw translated, the drawable's bounds that it signals 
     // for invalidation won't be the actual bounds we want invalidated, 
     // so just invalidate this whole view. 
     invalidate(); 
    } 

    ... 
} 
+0

Решена ли проблема? –

+0

@SrikarReddy К сожалению, нет. У вас такая же проблема? –

+0

Да, с той же проблемой с onProgressRefresh. Не знаете, почему это происходит и как его решить. –

ответ

0

Ваш метод AbsSeekBar onProgressRefresh отмечен @Override. Does ProgressBar определяет метод onProgressRefresh (float, boolean, int)?

+0

Да, это делает: 'недействительным onProgressRefresh (флоат масштаб, логический fromUser, внутр прогресс) { если (AccessibilityManager.getInstance (mContext) .isEnabled()) { scheduleAccessibilityEventSender(); } } ' –

Смежные вопросы