2016-04-13 11 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

@OverrideマークされているonProgressRefreshあなたAbsSeekBar方法。 ProgressBarはonProgressRefresh(float、boolean、int)メソッドを定義していますか?

+0

はい、それはありません: 'ボイドonProgressRefresh(フロートスケール、ブールFROMUSER、INT進行){ (AccessibilityManager.getInstance(mContext)が.isEnabled()){場合 scheduleAccessibilityEventSender()。 } } –

関連する問題