Невозможно использовать общие предпочтения в классе, который расширяет представление - PullRequest
5 голосов
/ 29 июля 2010

Я получаю сообщение об ошибке, когда пытаюсь получить доступ к shared preference из класса, который расширяет View.

Ошибка: "The method getSharedPreferences(String, int) is undefined for the type ViewforRed",

где ViewforRedмой класс

Вот пример кода

 public class ViewforRed extends View

 {

       public final String PREFS_NAME = "GRAPHICS";
       SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);


           public ViewforRed(Context context)
             {
                super(context);

             }

         public void onDraw(Canvas canvas) 
               {


                 Paint paint = new Paint();

                 float  p0,p1,p2,p3,p4,p5,p6,p7,p8,p9;

   }

   }

1 Ответ

8 голосов
/ 29 июля 2010

getSharedPreferences () - это метод объекта Context.Так что вы можете попробовать:

public class ViewforRed extends View

 {

       public final String PREFS_NAME = "GRAPHICS";
       SharedPreferences settings;


           public ViewforRed(Context context)
             {   
                settings = context.getSharedPreferences(PREFS_NAME, 0);
                super(context);

             }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...