0

に問題がありNetworkViewます。アプリに画像を読み込もうとしています。画像の URL はローカルホスト 127.0.0.1 からのものです。しかし、それは機能していないようnetworkView.setDefaultImageです。

ログキャットからの私のJSON出力は次のとおりです。

json

これが私のコードです:LruCacheMap.java

public class LruCacheMap extends LruCache<String,Bitmap> implements ImageLoader.ImageCache{

public static int getDefaultLruCacheSize() {
    final int maxMemory = (int) (Runtime.getRuntime().maxMemory() / 1024);
    final int cacheSize = maxMemory / 8;

    return cacheSize;
}

//CONSTRUCTOR
public LruCacheMap(){
    //put the method
    this(getDefaultLruCacheSize());
}

//EQUIVALENT SIZE IN Kb
public LruCacheMap(int sizeInKiloBytes){
    super(sizeInKiloBytes);
}

@Override
protected int sizeOf(String key, Bitmap value) {
    return value.getRowBytes() * value.getHeight() / 1024;
}

@Override
public Bitmap getBitmap(String url) {
    return get(url);
}

@Override
public void putBitmap(String url, Bitmap bitmap) {
    put(url,bitmap);
} }

これが私のスニペットコードですOrgListAdapter.java

@Override
public void onBindViewHolder(OrgViewHolder holder, int position) {

    if (mOrganizationData.get(position).getOrgType().equalsIgnoreCase("Public")){
        holder.appCompatImageViewOrgType.setImageResource(R.drawable.ic_type_public);
    }else {
        holder.appCompatImageViewOrgType.setImageResource(R.drawable.ic_action_private_group);
    }

    //IMAGE LOADER orgLogoName
        if (imageLoader == null) {
            imageLoader = SingletonController.getInstance().getImageLoader();
            Log.e("ImageLoader Problem",imageLoader+"");
        }

        orgLogoName = mOrganizationData.get(position).getOrgLogoName();
        orgLogoPath = mOrganizationData.get(position).getOrgLogoPath();
        logoUrl = orgLogoPath + orgLogoName;

        holder.networkImageViewLogo.setDefaultImageResId(R.drawable.picture_32px);

        if (logoUrl != null){
            Log.e("The URL: ", logoUrl);
            holder.networkImageViewLogo.setBackgroundColor(GetColorSdk.getColor(mContext,R.color.appIntroColorFifth));
            holder.networkImageViewLogo.setImageUrl(logoUrl,imageLoader);

        }else{
            holder.networkImageViewLogo.setErrorImageResId(R.drawable.picture_32px);
        }
    }

これが私のコントローラーです -SingletonController.java

public class SingletonController extends Application{

public static final String TAG = SingletonController.class.getSimpleName();
public Context mContext;
private RequestQueue mRequestQueue;
private ImageLoader mImageLoader;
LruCacheMap mLruBitmapCache;

private static SingletonController mInstance;

public SingletonController(){}

public SingletonController(Context context){
    this.mContext = context;
}

@Override
public void onCreate() {
    super.onCreate();
    mInstance = this;
}

public static synchronized SingletonController getInstance() {
    return mInstance;
}

public RequestQueue getRequestQueue() {
    if (mRequestQueue == null) {
        mRequestQueue = Volley.newRequestQueue(getApplicationContext());
    }

    return mRequestQueue;
}

public ImageLoader getImageLoader() {
    //REQUEST QUEUE
        getRequestQueue();

    if (mImageLoader == null) {
        getLruBitmapCache();
        mImageLoader = new ImageLoader(this.mRequestQueue, mLruBitmapCache);
    }
    return this.mImageLoader;
}

public LruCacheMap getLruBitmapCache() {
    if (mLruBitmapCache == null)
        mLruBitmapCache = new LruCacheMap();
    return this.mLruBitmapCache;
}

public <T> void addToRequestQueue(Request<T> req, String tag) {
    req.setTag(TextUtils.isEmpty(tag) ? TAG : tag);
    getRequestQueue().add(req);
}

public <T> void addToRequestQueue(Request<T> req) {
    req.setTag(TAG);
    getRequestQueue().add(req);
}

public void cancelPendingRequests(Object tag) {
    if (mRequestQueue != null) {
        mRequestQueue.cancelAll(tag);
    }
} }

デバッグを試みたところ、null ではないことが示されました。にロゴ画像を読み込みたいnetworkImage

a

注:これを使用てラップトップをホススポットとして作成し、ipV4. 私のラップトップはサーバーとして機能します。エミュレータ(Geny Motion)と実機の両方を使用しています。

URLの私のコードでは:public static final String URL = "http://127.0.0.1/organization/org_logo/" ;

4

0 に答える 0