onActivityResult(...)没有调用SherlockFragmentActivity

时间:2013-05-02 00:07:11

标签: android actionbarsherlock android-fragmentactivity

我遇到onActivityResult(...)未被调用的问题。我正在调整另一个应用程序中的工作代码,但这些代码一切正常,但我现在正在使用Fragments

Activity如下......

public class RecordingsPagerActivity extends SherlockFragmentActivity 
    implements RecordingsListFragment.Callbacks {

    private final int SHOW_DETAIL_DIALOG = 1234;

    // RecordingsListFragment.Callbacks method
    @Override
    public void onRecordingsItemSelected(int oid) {
        showGuideDetailDialog(oid);
    }

    ...

    private void showGuideDetailDialog(int oid) {
        Intent i = new Intent(this, GuideDetailActivity.class);
        i.putExtra("oid", oid);
        startActivityForResult(i, SHOW_DETAIL_DIALOG);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {

        Log.d(TAG, "onActivityResult() entered - requestCode: " + requestCode + " - resultCode: " + resultCode);

        ...
    }
}

基本上,当选择Fragment中的列表项时,Fragment会调用onRecordingsItemSelected(...)回调方法,GuideDetailActivity(扩展Activity)会显示出来精细。根据我选择的按钮,onClick(...)中的GuideDetailActivity方法会设置结果并调用finish()

问题是,我从未在logcat中看到Log.d(...)的输出。正如我所说的,它在使用Activities创建的应用程序中运行正常(它从我的原始来源复制/粘贴)。

是否有某些事情导致FragmentActivity无法收到结果,这意味着我需要采取不同的做法?

0 个答案:

没有答案