Call an activity method from a fragment

前端 未结 14 860
广开言路
广开言路 2020-11-22 09:08

Trying to call a method in my activity from a fragment. I want the fragment to give the method data and to get the data when the method return. I want to achieve similar to

14条回答
  •  醉酒成梦
    2020-11-22 09:32

    For Kotlin try it out

    class DataForm : Fragment() {
        override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
            Tasks(this).getData()
        }
    
        fun getResponse(response: String) {
            // code
        }
    }
    
    class Tasks(private val context: Any) {
        fun getData() {
    
            val getContext = (context as DataForm).activity
            val getFragment = (context as DataForm)
    
            val responseListener = Response.Listener { response ->
                getFragment.getResponse(response)
            }
    
            val errorListener = Response.ErrorListener { error ->
                error.printStackTrace();
            }
    
            val stringRequest = StringRequest(Request.Method.GET, url, responseListener, errorListener)
            Volley.newRequestQueue(getContext).add(stringRequest)
        }
    }
    

提交回复
热议问题