2010-09-08 3 views
7

Я хочу нарисовать битмап на метод вытягивания в MyPositionOverlay расширяет класс Overlay, но я получаю эту ошибку: Метод getResource() не определено для типа MyPositionOverlayAndroid getResource() неопределенная ошибка

Где я ошибаюсь?

Вот код метода формовки:

Bitmap bmp = BitmapFactory.decodeResource(getResource(), R.drawable.icon); 
    canvas.drawBitmap(bmp, screenPts.x, screenPts.y-50, null); 

Благодаря

ответ

14

Метод GetResources() не является членом класса Overlay. getResources() является членом класса Context. Вы должны передать ссылку на контекст для накладываемого подкласса, так что он может загрузить Drawable ресурс:

Bitmap bmp = BitmapFactory.decodeResource(context.getResources(), R.drawable.icon); 

Вы также не хотите загрузить растровое изображение в методе дро, поскольку это очень большой объем памяти и замедлит ваше приложение, вы должны сохранить переменную-член в растровом изображении в конструкторе наложения, чтобы он загружался только один раз.

+1

Спасибо за ваш быстрый ответ, но теперь я получаю эту ошибку «контекст не может быть решена» – Jovan

+1

необходимо определить контекст контекста; – Jorgesys

1

использование

Bitmap bmp = BitmapFactory.decodeResource(this.getResources(), R.drawable.icon); 

или

Bitmap bmp = BitmapFactory.decodeResource(Context.getResources(), R.drawable.icon); 
Смежные вопросы