Это кажется простым, я пытаюсь установить растровое изображение, но из ресурсов, которые у меня есть в приложении в выпадающей папке.
bm = BitmapFactory.decodeResource(null, R.id.image);
Это правильно?
Это кажется простым, я пытаюсь установить растровое изображение, но из ресурсов, которые у меня есть в приложении в выпадающей папке.
bm = BitmapFactory.decodeResource(null, R.id.image);
Это правильно?
Предполагая, что вы вызываете это в классе Activity
Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.image);
Требуется первый параметр "Ресурсы". Обычно его можно получить в любом Контексте (и подклассах, таких как Activity).
Попробуйте это
Это из sdcard
ImageView image = (ImageView) findViewById(R.id.test_image);
Bitmap bMap = BitmapFactory.decodeFile("/sdcard/test2.png");
image.setImageBitmap(bMap);
Это из ресурсов
Bitmap bMap = BitmapFactory.decodeResource(getResources(), R.drawable.icon);
Если ресурс отображается и представляет собой представление, вы также можете его захватить. Как скриншот:
View rootView = ((View) findViewById(R.id.yourView)).getRootView();
rootView.setDrawingCacheEnabled(true);
rootView.layout(0, 0, rootView.getWidth(), rootView.getHeight());
rootView.buildDrawingCache();
Bitmap bm = Bitmap.createBitmap(rootView.getDrawingCache());
rootView.setDrawingCacheEnabled(false);
Это фактически захватывает весь макет, но вы можете изменить его, как хотите.
Если вы объявили объект растрового изображения и хотите его отобразить или сохранить этот растровый объект. но сначала вам нужно назначить какое-либо изображение, и вы можете использовать событие нажатия кнопки, этот код будет демонстрировать только то, как сохранить рисованное изображение в растровом объекте.
Bitmap contact_pic = BitmapFactory.decodeResource(v.getContext().getResources(), R.drawable.android_logo);
Теперь вы можете использовать этот объект растрового изображения, хотите ли вы его сохранить или использовать его на картах Google, рисуя рис. на фиксированной широте и долготе или использовать где-то еще
Я нашел этот вопрос, когда захотел установить растровое изображение для своего представления. По этой причине я нашел этот код более полезным:
myImgView.setImageDrawable(getResources().getDrawable(R.drawable.monkey));
От здесь
просто замените эту строку
bm = BitmapFactory.decodeResource(null, R.id.image);
с
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.YourImageName);
Я хочу сказать, просто измените значение null с помощью getResources() Если вы используете этот код в любой кнопке или в режиме просмотра изображения, просто добавьте getApplicationContext() перед getResources()..