0
我寫一個尋呼機片段如下:設置初始尋呼機項目
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
import android.support.v4.view.ViewPager;
import java.util.ArrayList;
import java.util.UUID;
public class CommentPagerActivity extends FragmentActivity{
private ViewPager mViewPager;
private ArrayList<Comment> mComments;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mViewPager = new ViewPager(this);
mViewPager.setId(R.id.viewPager);
setContentView(mViewPager);
mComments = CommentLab.get(this).getCommentsArray(); //get commentArray``
//setting up pagerAdapter
FragmentManager fm = getSupportFragmentManager();
mViewPager.setAdapter(new FragmentStatePagerAdapter(fm) {
@Override
public Fragment getItem(int position) {
Comment comment = mComments.get(position);
return CommentFragment.newInstance(comment.getId());
}
@Override
public int getCount() {
return mComments.size();
}
});
//ViewPager by default shows the first comment no matter where u click.
//to have it show the comment selected, do the following
UUID commentId = (UUID)getIntent().getSerializableExtra(CommentFragment.EXTRA_COMMENT_ID);
for(int i=0; i < mComments.size(); i++){
if (mComments.get(i).getId().equals(commentId)){
mViewPager.setCurrentItem(i);
break;
}
}
}
}
的尋呼機的作品,但是當我點擊列表中的項目(可以說最後一個項目),它總是初始化viewPager與我的第一個項目
arrayList(mComments)...
什麼可能是錯的?
的應用主要有評論列表視圖,當有人點擊列表中的一個項目,它打開CommentsFragment有關評論
只是一個猜測,但你告訴viewpager設置一個項目之前,它已被創建。嘗試在onCreateView或onResume中設置項目,看看會發生什麼。 – spacitron