当我旋转屏幕时,片段将从活动中分离出来。但是我的片段中有一个监听器,它在按下一个按钮后运行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();
}
});
答案 0 :(得分:1)
在其他系统中没有循环,在这里,只要更改布尔值,就必须调用一些方法来对它做出反应。