且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Android-getTargetFragment和setTargetFragment-它们的用途是什么

更新时间:2021-11-29 03:54:48

用例=同一活动托管的2个片段.

Use case = 2 fragments hosted by the same activity.

startActivityForResult()在2个活动之间建立关系,而setTargetFragment()定义2个片段之间的呼叫者/被叫关系.

Where startActivityForResult() establishes a relationship between 2 activities, setTargetFragment() defines the caller/called relationship between 2 fragments.

setTargetFragment(target)让被调用"的片段知道将结果发送到哪里.在这种情况下,会手动调用onActivityResult().

setTargetFragment(target) lets the "called" fragment know where to send the result. onActivityResult() is called manually in this case.

public class Caller extends Fragment
     Fragment called = Called.newInstance()
     called.setTargetFragment(this)

public class Called extends DialogFragment
   intent = amazingData
   getTargetFragment().onActivityResult(getTargetRequestCode(), resultCode, intent)