답변:
Activity 클래스에서 이것을 호출한다고 가정합니다.
Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.image);
첫 번째 매개 변수 인 Resources가 필요합니다. 일반적으로 모든 컨텍스트 (및 활동과 같은 하위 클래스)에서 얻을 수 있습니다.
리소스가 표시되고 있고보기 인 경우이를 캡처 할 수도 있습니다. 스크린 샷처럼 :
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지도에서 사용하거나 다른 곳에서 사용할 수 있습니다.
이 기능을 사용하면 이미지 비트 맵을 얻을 수 있습니다. 그냥 이미지 URL을 전달
public Bitmap getBitmapFromURL(String strURL) {
try {
URL url = new URL(strURL);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.connect();
InputStream input = connection.getInputStream();
Bitmap myBitmap = BitmapFactory.decodeStream(input);
return myBitmap;
} catch (IOException e) {
e.printStackTrace();
return null;
}
}