2015-02-13 5 views
1

У меня есть ImageView, и я хочу найти путь по изображению и добавить String. Я хочу сделать это, потому что мне нужно отправить это на мой веб-сервис, как изображение по умолчанию.Получение пути изображения из изображения?

Как я могу это сделать?

ImageView

<ImageView 
    android:id="@+id/ivPerfil" 
    android:padding="5dp" 
    android:layout_width="120dp" 
    android:layout_height="120dp" 
    android:src="@drawable/icon_usuario" 
    android:scaleType="fitXY" 
    /> 

Получение пути

ivPerfil = (ImageView)findViewById(R.id.ivPerfil); 
Drawable img = getResources().getDrawable(R.drawable.icon_usuario); 
String pathImage = img.toString(); 
+0

Так что же такое 'pathImage', если не путь, к изображению, как просили? – Marcus

ответ

3

Вы можете попробовать это:

Uri path = Uri.parse("android.resource://your.package.name/" + R.drawable.icon_usuario); 
    String imgPath = path.toString(); 

"your.package.name" это имя вашего пакет (например: com.example.mypackage)

Вы можете использовать этот путь в андроиде, как это:

ivPerfil = (ImageView)findViewById(R.id.ivPerfil); 
ivPerfil.setImageURI(path); 
+0

отлично, спасибо большое! – FernandoPaiva

3

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

Поскольку вы четко знаете путь к изображению при его настройке (поскольку вы не сможете установить его, не зная об этом), вы можете установить тег View's (который может быть технически любым Object).

В этом случае это всего лишь String, который вы хотите сохранить.

Так скажем, у вас есть:

Uri imageFilePath = Uri.parse("some/path/to/file.png"); 

Теперь при настройке изображения Uri на ImageView, добавьте это после того, как установить его тег:

imageView.setTag(imageFilePath.toString()); 

Затем, когда вы на самом деле отправляя его на сервер, просто вызовите метод getTag() на вашем ImageView и вы получите правильное расположение файла.

например.

String path = imageView.getTag().toString(); 

Если изображение из ваших активов, хотя, вы будете иметь, чтобы построить соответствующий путь от ресурсов (см miselking Ответит на этой странице, как это сделать).

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