2011-01-29 5 views
1

я это imageview на моем макете:Почему этот ImageView не показывает мое изображение?

<ImageView 
    android:id="@+id/profileImage" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@id/profileImageLabel" 
    android:layout_alignParentRight="true" 
    android:maxWidth="90px" 
    android:maxHeight="90px"/> 

И я даю ему источник изображения динамически на OnCreate():

Bitmap bm = BitmapFactory.decodeFile("c:/logo.png"); 

     profileImage.setImageBitmap(bm); 
     profileImage.invalidate(); 

Но когда я проверить мое приложение, это Безразлично 't показывает изображение, оно показывает только черный экран.

Почему imageview не отображается и только черный экран?

ответ

2

Ну, мне кажется, что ваш путь к файлу неправильный. Вы тестируете это в эмуляторе правильно? Эмулятор не может получить доступ к вашему жесткому диску или чем-либо еще, что не является частью эмулятора. Что вы должны сделать, это добавить изображение в вытяжке папку в затмении (если то, что вы используете), а затем загрузить файл, написав:

Resources r = this.getResources(); 
Bitmap bm = BitmapFactory.decodeResource(r, R.drawable.logo); 
+0

и что произойдет, если мне нужно получить файл с мобильного? (мне нужно это для моего приложения, потому что пользователи смогут выбрать изображение со своего мобильного телефона и использовать его как изображение профиля) – NullPointerException

+0

Ну, тогда вы можете сделать так, как вы это сделали, просто введите правильный путь к файлу. Вы можете узнать больше об этом здесь: http://developer.android.com/guide/topics/data/data-storage.html#filesExternal – Durza007

0

Вы можете использовать блок, как это

File iconFile = new File("/path/to/image.png"); 
FileInputStream fis = new FileInputStream(iconFile); 
Bitmap bi = BitmapFactory.decodeStream(fis); 
fis.close(); 

, чтобы получить растровое изображение для файла, который у вас есть «на диске». /path/to/image.png - путь, по которому сохраняется изображение.

Смежные вопросы