Android Open Source - FotoCach Retain Fragment






From Project

Back to project page FotoCach.

License

The source code is released under:

Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION ...

If you think the Android project FotoCach listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package android.hispano.fotocach;
//from ww  w. j  a  va2  s  .  co m
import android.os.Bundle;
import android.support.v4.app.Fragment;

/**
 * Un simple Fragment sin UI que guarda un Objeto simple y lo retiene por encima de los cambios de configuracin.
 * Se utilizar para retener el objeto ImageCache.
 */
public class RetainFragment extends Fragment {
    private static final String TAG = "RetainFragment";
    private Object mObject;

    /**
     * Constructor vaco segn la documentacin de Fragment
     */
    public RetainFragment() {}

    /**
     * Localiza una instancia existente de este Fragment o si no la encuentra, 
     * crea y la aade usando FragmentManager.
     *
     * @param fragmentManager El FragmentManager que se utilizaz para el manejo.
     * @return La instancia existente del Fragment o la nueva instancia si fue creada.
     */
    public static RetainFragment findOrCreateRetainFragment(android.support.v4.app.FragmentManager fragmentManager) {
        // Comprueba si tenemos retenido el worker fragment.
        RetainFragment mRetainFragment = (RetainFragment) fragmentManager.findFragmentByTag(TAG);

        // Sin no est retenido (o es la primera en ejecutarse), necesitamos crearlo y aadirlo.
        if (mRetainFragment == null) {
            mRetainFragment = new RetainFragment();
            fragmentManager.beginTransaction().add(mRetainFragment, TAG).commit();
        }
        return mRetainFragment;
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // Asegura que este Fragment es retenido sobre los cambios de configuracin.
        setRetainInstance(true);
    }

    /**
     * Almacena un objeto simple en este Fragment.
     *
     * @param object El objeto a almacenar
     */
    public void setObject(Object object) {
        mObject = object;
    }

    /**
     * Obtiene el objeto almacenado.
     *
     * @return El objeto almacenado
     */
    public Object getObject() {
        return mObject;
    }

}




Java Source Code List

android.hispano.fotocach.DiskLruCache.java
android.hispano.fotocach.ImageCache.java
android.hispano.fotocach.ImageFetcher.java
android.hispano.fotocach.ImageWorker.java
android.hispano.fotocach.RetainFragment.java
android.hispano.fotocach.utils.Utils.java