Я не уверен, но я не думаю, что есть достаточно информации ... я не могу найти UniversalImageLoader
, на который ссылаются, я думаю, что он обрабатывает фактическую настройку изображения, как setImage
подразумевает.
@Override
public void getImagePath(Uri imagePath) {
Log.d(TAG, "getImagePath: setting the image to imageview");
// THIS LINE UniversalImageLoader.setImage(imagePath.toString(), mSelectImage);
//assign to global variable
mSelectedBitmap = null;
mSelectedUri = imagePath;
}
Обновление до ответа
Итак, вот как я обычно выполняю диалог, который вы используете
private static final int READ_REQUEST_CODE = 42;
public void performFileSearch()
{
// ACTION_OPEN_DOCUMENT is the intent to choose a file via the system's file
// browser.
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
// Filter to only show results that can be "opened", such as a
// file (as opposed to a list of contacts or timezones)
intent.addCategory(Intent.CATEGORY_OPENABLE);
// Filter to show only images, using the image MIME data type.
// If one wanted to search for ogg vorbis files, the type would be "audio/ogg".
// To search for all documents available via installed storage providers,
// it would be "*/*".
intent.setType("*/*");
startActivityForResult(intent, READ_REQUEST_CODE);
}
@Override
public void onActivityResult(int requestCode, int resultCode,
Intent resultData)
{
if (requestCode == READ_REQUEST_CODE && resultCode == Activity.RESULT_OK)
{
Uri uri = null;
if (resultData != null)
{
uri = resultData.getData();
String back = uri.toString();
// DO SOMETHING WITH STRING
}
}
}
ТАК, КОГДА ВАШ КОД БЫЛ
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.dialog_selectphoto, container, false);
TextView selectPhoto = (TextView) view.findViewById(R.id.dialogChoosePhoto);
selectPhoto.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d(TAG, "onClick: accessing phones memory.");
performFileSearch()
}
});
TextView selectPhoto1 = (TextView) view.findViewById(R.id.dialogChoosePhoto1);
selectPhoto1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d(TAG, "onClick: accessing phones memory.");
performFileSearch();
}
});
TextView takePhoto = (TextView) view.findViewById(R.id.dialogOpenCamera);
takePhoto.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d(TAG, "onClick: starting camera.");
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, CAMERA_REQUEST_CODE);
}
});
return view;
}
// Я не думаю, что это является причиной, просто потому, что все, кажется, течет, пока часть, которая устанавливает изображение ... Диалог вернет URI к изображению, но другой код устанавливает изображение не в том месте,
ImageView X = (ImageView) findViewById(R.id.ImageViewID);
X.setBackgroundResource ?
Или что-то подобное, это то, что я ищу, я думаю, что это может быть причиной проблемы.
Поцарапайте это
Я нашел ImageLoader, и все, кажется, в порядке ..
Constructor Detail:
ImageLoader
public ImageLoader(RequestQueue queue, ImageLoader.ImageCache imageCache)Constructs a new ImageLoader.
// Parameters:queue - The RequestQueue to use for making image requests.imageCache - The cache to use as an L1 cache.
Вы пробовали другую форму настройки изображения?