पर कॉल करना होगा किसी ने पृष्ठभूमि थ्रेड से छवियों को लाने के लिए ग्लाइड का उपयोग किया है?ग्लाइड जोर दें: java.lang.IllegalArgumentException: आपको इस विधि को मुख्य थ्रेड
java.lang.IllegalArgumentException: You must call this method on the main thread
लेकिन इस सूत्र के अनुसार, यह काम करना चाहिए (मुझे लगता है कि):: मैं इस ज़ोर बार आ रही है
https://github.com/bumptech/glide/issues/310
अभी तक, मैं यह काम करने के लिए जब तक कि मैं से यह फोन नहीं प्राप्त कर सकते हैं, मुख्य धागा
Glide.get(mContext);
loadUserImage(userImageUrl);
// wait 5 seconds before trying again
int imageLoadingTimeOut = mContext.getResources().getInteger(R.integer.image_loading_time_out);
if (imageLoadingTimeOut > 0) {
new Timer().schedule(new TimerTask() {
@Override
public void run() {
if (!mUserImageLoaded) {
loadUserImage(userImageUrl);
}
}
}, imageLoadingTimeOut);
}
}
और loadUserImage:
private boolean mUserImageLoaded = false;
private void loadUserImage(String userImageUrl) {
if (userImageUrl != null && !userImageUrl.isEmpty() && !mUserImageLoaded) {
Glide.with(mContext).using(Cloudinary.getUrlLoader(mContext)).load(userImageUrl).crossFade().listener(new RequestListener<String, GlideDrawable>() {
@Override
public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) {
return false;
}
@Override
public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
mImageMessageContent.invalidate();
mUserImageLoaded = true;
return false;
}
}).into(mImageMessageContent);
} else {
mImageMessageContent.setVisibility(View.GONE);
}
}
और mContext सिर्फ गतिविधि "इस" सूचक है
यहाँ क्या मैं मुख्य थ्रेड से ऐसा करने के लिए कोशिश कर रहा हूँ है।
वैसे भी, क्या मैं मुख्य से अलग धागे से ग्लाइड का उपयोग कर सकता हूं?
thx!
अलग थ्रेड में लोड विधि कॉल या कि धागा रन onUi धागा –
आप और अधिक विस्तार से बता सकते हैं नहीं बनाते हैं? मैं इसे ऑनयूआई थ्रेड पर कैसे नहीं चला सकता? मुझे छवि दृश्य पॉइंटर को ग्लाइड करने की आवश्यकता है। यह सूचक मुख्य यूआई थ्रेड से पुनर्प्राप्त किया जाता है। – gmmo