如何将片段重新附加到活动?

时间:2014-03-20 08:16:06

标签: android android-fragments android-configchanges

当我旋转屏幕时,片段将从活动中分离出来。但是我的片段中有一个监听器,它在按下一个按钮后运行asynctask。这很好。因此,当我更改页面时,我正在搜索没有按钮的方式。

在我的MainActivity中,我有一个onPageChangeListener,如下所示:

    @Override
    public void onPageSelected(int position)
    {
        // TODO Auto-generated method stub
        currentSelectedFragmentPosition = position;
        frag.onPageVisible(currentSelectedFragmentPosition);
                    frag2.onPageVisible(currentSelectedFragmentPosition);
    }

然后在我的片段中,onPageVisible函数是这样的:

public void onPageVisible(int position)
{
    tabstrippos = position;

    if (MainActivity.selected[0])
    {
        if (tabstrippos == pageNumber)
        {
            mainActivity = getContext();
            if (totalItems < 3)
            {
                if (isAdded())
                {
                    startNewAsyncTask();
                }
                else
                {
                    Log.w("tag", "its not added");
                }
            }
        }
    }
}

旋转后会转到其他位置,因为活动已分离

我所谈论的监听器来自我使用的{gitHub类gitHub 在我的片段中看起来像这样:

onStart()
{
....

    ((PullToRefreshListView) getListView()).setOnRefreshListener(new OnRefreshListener()
    {
        @Override
        public void onRefresh()
        {
            // Do work to refresh the list here.
            startNewAsyncTask();
        }
    });

1 个答案:

答案 0 :(得分:1)

在其他系统中没有循环,在这里,只要更改布尔值,就必须调用一些方法来对它做出反应。