2017-01-03 2 views
-1

지금은 /pkg/pages 파일을 넣은/assets/폴더가 있습니다.안드로이드에서 사진 설치

최근 개발자가 나를 위해 새로운 자산을했다 - 그들은 (예를 들어 사용) 형식으로 온 :이 (예 /res/drawable-mdpi/를 등) /res/drawable/ 폴더에 갈 필요가 있는가

/mdpi/example_asset.png 
/xhdpi/[email protected] 

을 ? my/asset/폴더에있는 파일 대신이 파일을 사용하려면 코드를 완전히 변경해야합니까?

는 일반적으로 I (예를 들어 /assets/example_asset.png 같은 경우)이 자산 폴더에서 비트 맵을 얻기 위해 해왔 :
public static Bitmap getBitmapFromAsset(Context context, String fileName) { 
    AssetManager assetManager = context.getAssets(); 

    InputStream istr; 
    Bitmap bitmap = null; 
    try { 
     istr = assetManager.open(fileName + ASSET_FILE_EXTENSION); 
     bitmap = BitmapFactory.decodeStream(istr); 
    } catch (IOException e) { 
     Log.w(LOG_TAG, "Could not get bitmap for asset image " + fileName + ": " + e); 
    } 

    return bitmap; 
} 

무엇 모두 내가 변경해야

, 여기?

+0

왜 downvote? 힘든 군중! – user7368066

답변

0

드로어 블용으로 사용하려면 올바른 폴더로 이동해야합니다. 드로어 블 (drawable)로 사용하지 않는다면 이것을 자산으로 사용할 수 있습니다. 그러나 에셋 파일에는 크기 오버라이드가 없습니다. 다른 크기의 장치에 다른 버전의 이미지를 사용하려면 드로어 블로 사용해야합니다.

실제로 이미지를 말할 때 자산으로 사용할 이유가 없습니다. 드로어 블 시스템이 거의 항상 더 편리합니다.

+0

대신 코드를 사용하여 수행해야하는 작업은 무엇입니까? 지금은 예를 들어,'/ assets/example_asset.png'을 비트 맵에 매핑하고이를 ImageView에 적용하고 있습니다. 지금 Drawable과 Asset을 사용하지 않는다면 뭔가 다른 것을해야한다는 것을 상상해보십시오. – user7368066

+0

실제로 더 쉽습니다. imageView.setImageResource (R.drawable.filename)를 사용하십시오. 그게 전부입니다, 비트 맵을 읽지 않습니다. –

+0

관리하기 쉽게 하위 폴더를 포함 할 수 있습니까? 예를 들어,'/ res/drawable-xhdpi/cityIcons/someCityFile.png' 대'/ res/drawable-xhdpi/farmIcons/someFarmFile.png'? 또는 모든 것이 하나의 거대한 클러스터 머핀에서 함께 그룹화되어야합니까? – user7368066