我正在使用Android中的v4兼容性ViewPager.我的FragmentActivity有一堆数据,可以在我的ViewPager中的不同页面上以不同的方式显示.到目前为止,我只有3个相同的ListFragment实例,但将来我将有3个不同的ListFragments实例.ViewPager位于垂直电话屏幕上,列表不是并排的.
现在,ListFragment上的一个按钮启动一个单独的整页活动(通过FragmentActivity),它返回并且FragmentActivity修改数据,保存数据,然后尝试更新其ViewPager中的所有视图.就在这里,我被卡住了.
public class ProgressMainActivity extends FragmentActivity
{
MyAdapter mAdapter;
ViewPager mPager;
@Override
public void onCreate(Bundle savedInstanceState)
{
...
mAdapter = new MyAdapter(getSupportFragmentManager());
mPager = (ViewPager) findViewById(R.id.viewpager);
mPager.setAdapter(mAdapter);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
...
updateFragments();
...
}
public void updateFragments()
{
//Attempt 1:
//mAdapter.notifyDataSetChanged();
//mPager.setAdapter(mAdapter);
//Attempt 2:
//HomeListFragment fragment = (HomeListFragment) getSupportFragmentManager().findFragmentById(mAdapter.fragId[0]);
//fragment.updateDisplay();
}
public static class MyAdapter extends FragmentPagerAdapter implements
TitleProvider
{
int[] fragId = {0,0,0,0,0};
public MyAdapter(FragmentManager fm)
{
super(fm);
}
@Override …Run Code Online (Sandbox Code Playgroud) android android-adapter android-fragments android-viewpager android-listfragment
我正在开发 Android 应用程序。在我的应用程序中,我必须使用 5 个片段并从片段 1 滑动到片段 5。所以我使用了一个 FragmentActivity 、FragmentPagerAdapter 和 5 个片段。现在我可以滑动浏览所有片段,并可以通过使用来识别当前片段
ViewPager.OnPageChangeListener()
Run Code Online (Sandbox Code Playgroud)
我必须在所有片段中添加按钮,并且单击按钮必须像滑动一样打开下一个片段。我怎么能这样做呢?在这里我发布一些我的代码片段。
fragmentactivity.java
public class HomeScreen extends FragmentActivity
{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.themed_circles);
mAdapter = new InsuranceFragmentAdapter(getSupportFragmentManager(),
HomeScreen.this);
mPager = (ViewPager) findViewById(R.id.pager);
mPager.setAdapter(mAdapter);
mIndicator = (CirclePageIndicator) findViewById(R.id.indicator);
mIndicator.setViewPager(mPager);
// mIndicator.setCurrentItem(2);
mIndicator
.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
private int pos;
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrolled(int position,
float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageScrollStateChanged(int state) {
System.out.println("test scroll …Run Code Online (Sandbox Code Playgroud) android ×2