FRFragmentListener

A listener interface for fragment events.

See also

Samples

import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.os.bundleOf
import androidx.fragment.app.Fragment
import org.fog_rock.frfragmentlistener.fragment.FRFragmentListener
import org.fog_rock.frfragmentlistener.fragment.restoreFragmentEventListener
import org.fog_rock.frfragmentlistenersample.databinding.FragmentSampleBinding
fun main() { 
   //sampleStart 
   /**
     * A sub-interface of `FRFragmentListener` that notifies the parent activity of fragment events.
     */
    interface Listener: FRFragmentListener {

        fun onClickedYesButton()

        fun onClickedNoButton()
    } 
   //sampleEnd
}
import android.os.Bundle
import org.fog_rock.frextensions.androidx.fragment.replaceFragment
import org.fog_rock.frfragmentlistener.activity.FRAppCompatActivity
import org.fog_rock.frfragmentlistener.dialog.FRDialogFragment
import org.fog_rock.frfragmentlistenersample.R
import org.fog_rock.frfragmentlistenersample.databinding.ActivitySampleBinding
fun main() { 
   //sampleStart 
   /**
     * Register a fragment listener and keep a return value
     * as a private field in the subclass of `FRAppCompatActivity`.
     */
    private val fragmentListenerKey = registerForFragmentListener(object : SampleFragment.Listener {
        override fun onClickedYesButton() {
            // Write your result code here!
        }
        override fun onClickedNoButton() {
            // Write your result code here!
        }
    }) 
   //sampleEnd
}
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.os.bundleOf
import androidx.fragment.app.Fragment
import org.fog_rock.frfragmentlistener.fragment.FRFragmentListener
import org.fog_rock.frfragmentlistener.fragment.restoreFragmentEventListener
import org.fog_rock.frfragmentlistenersample.databinding.FragmentSampleBinding
fun main() { 
   //sampleStart 
   /**
 * Register the listener key to arguments
 * when generate a new instance of the fragment.
 * The key of the pair would be `FRFragmentListener.ARGS_LISTENER_KEY`
 * and its value would be the listener key.
 */
return SampleFragment().apply {
    arguments = bundleOf(
        FRFragmentListener.ARGS_LISTENER_KEY to fragmentListenerKey
    )
} 
   //sampleEnd
}
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.core.os.bundleOf
import androidx.fragment.app.Fragment
import org.fog_rock.frfragmentlistener.fragment.FRFragmentListener
import org.fog_rock.frfragmentlistener.fragment.restoreFragmentEventListener
import org.fog_rock.frfragmentlistenersample.databinding.FragmentSampleBinding
fun main() { 
   //sampleStart 
   /**
     * Restore a fragment listener in the fragment.
     */
    private val listener: Listener? by lazy { restoreFragmentEventListener() } 
   //sampleEnd
}

Inheritors

Types

Link copied to clipboard
object Companion