android选项卡式活动列表片段

android选项卡式活动列表片段,android,android-fragments,android-tabactivity,Android,Android Fragments,Android Tabactivity,我是android新手,我的TabActivity(操作栏选项卡)中有一些片段。在第一个选项卡中,我有一个列表,我想在切换第二个选项卡时在第二个选项卡中显示所选列表的内容。在我的代码中,当我在第一个选项卡中选择列表项时,它会切换到第二个选项卡,但内容不会更新,但当我转到选项卡4和选项卡5,然后返回到选项卡2时,我会在第二个选项卡中获得内容更新?我不知道这个标签怎么用?因此,请给我一个示例选项卡式列表Fragment 我的第一个片段(表1) 在您的第二个片段中重写setUserVisibleHin

我是android新手,我的
TabActivity
(操作栏选项卡)中有一些片段。在第一个选项卡中,我有一个列表,我想在切换第二个选项卡时在第二个选项卡中显示所选列表的内容。在我的代码中,当我在第一个选项卡中选择列表项时,它会切换到第二个选项卡,但内容不会更新,但当我转到选项卡4和选项卡5,然后返回到选项卡2时,我会在第二个选项卡中获得内容更新?我不知道这个标签怎么用?因此,请给我一个示例选项卡式列表
Fragment

我的第一个片段(表1)


在您的第二个片段中重写
setUserVisibleHint
方法,并将更新代码放在其中,我刚刚编写了从代码中得到的信息,即它是您的更新部分

@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
   super.setUserVisibleHint(isVisibleToUser);
   if (isVisibleToUser && isResumed()) {
        adapterGenerator.setCompany(Company.getSelectedCompany());
        adapterGenerator.setViewIds(new int[] {R.id.textViewPartyName,R.id.textViewTotal});
        SimpleAdapter listAdapter = adapterGenerator.generateAdapter();
        listView.setAdapter(listAdapter);
   }
}

请在第二个片段中添加你的更新代码。请上传你为此所做的代码。我做了,但我面临同样的问题。我在第二个选项卡中获得了内容,但我的问题是,当我单击第一个选项卡中的列表项时,它不会立即显示在第二个选项卡上,当我滑动到第四个和第五个选项卡时,我返回到第二个选项卡,内容已更新,我再次选择列表,内容没有像上一样更改..感谢您的友好重播masoud vali,我犯了一个小错误,我把我的视图放在
setUserVisibleHint
中,这意味着我在
setUserVisibleHint
中调用的方法是
loadTableData
最后我在viewPager中使用
setOffScreenPageLimit
方法来解决我的问题
 public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {

    return loadTableData();
}


public View loadTableData()
{
    LayoutInflater inflater = getActivity().getLayoutInflater();

    ViewGroup container = (ViewGroup) getView();

    View view;

    view = inflater.inflate(R.layout.fragment_outstanding, container, false);
    OutstandingAdapterGenerator adapterGenerator = new OutstandingAdapterGenerator();
    adapterGenerator.setContext(getActivity());

    ListView listView = (ListView)view.findViewById(R.id.outstandingPurchaseList) ;


    adapterGenerator.setListViewResource(R.layout.list_item);
    adapterGenerator.setPurchase(true);
    adapterGenerator.setCompany(Company.getSelectedCompany());
    adapterGenerator.setViewIds(new int[]{R.id.textViewPartyName,R.id.textViewTotal});
    SimpleAdapter listAdapter = adapterGenerator.generateAdapter();
    listView.setAdapter(listAdapter);
    return view;
}



@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
    super.setUserVisibleHint(isVisibleToUser);



    if(isVisibleToUser && isResumed())
    {

        loadTableData();
    }
}
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
   super.setUserVisibleHint(isVisibleToUser);
   if (isVisibleToUser && isResumed()) {
        adapterGenerator.setCompany(Company.getSelectedCompany());
        adapterGenerator.setViewIds(new int[] {R.id.textViewPartyName,R.id.textViewTotal});
        SimpleAdapter listAdapter = adapterGenerator.generateAdapter();
        listView.setAdapter(listAdapter);
   }
}
//my view pager


mViewPager = (ViewPager) findViewById(R.id.container);
        mViewPager.setAdapter(mSectionsPagerAdapter);
        mViewPager.setOffscreenPageLimit(6);

//onCreateView

public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View view;
        view = inflater.inflate(R.layout.fragment_outstanding, container, false);
        return view;
    }

//UserVisibleHint

    public void setUserVisibleHint(boolean isVisibleToUser) {
        super.setUserVisibleHint(isVisibleToUser);
        if(isVisibleToUser)
        {
            OutstandingAdapterGenerator adapterGenerator_purchase = new OutstandingAdapterGenerator();
        adapterGenerator_purchase.setContext(getActivity());

        ListView listView = (ListView)getView().findViewById(R.id.outstandingPurchaseList) ;


        adapterGenerator_purchase.setListViewResource(R.layout.list_item);
        adapterGenerator_purchase.setPurchase(true);
        adapterGenerator_purchase.setCompany(Company.getSelectedCompany());
        adapterGenerator_purchase.setViewIds(new int[]{R.id.textViewPartyName,R.id.textViewTotal});
        SimpleAdapter listAdapter = adapterGenerator_purchase.generateAdapter();
        listView.setAdapter(listAdapter);

        }
    }