0

Я разрабатываю приложение для создания конституции, и я хочу использовать макет с вкладками. Вкладки получают данные из базы данных с помощью пользовательского адаптера. Поскольку размер данных (нет фрагмента) неизвестен, я хочу, чтобы каждый салфетки генерировал новое представление, которое представляет собой содержание главы раздела из Конституции.Выполнение прокрутки с использованием фрагмента

Я хочу что-то похожее на приложение-словарь ниже, с этими ярлыками с обеих сторон. Я знаком с вкладками, но мне бы хотелось получить ресурс, чтобы помочь мне достичь этого, так как большинство документов, которые я видел, не объясняют это. Благодаря

enter image description here

+0

look for viewpager – Nisarg

+0

Его просто просмотрщик. Вы можете добиться желаемого результата с помощью пейджера просмотра. –

ответ

0

Изменить это с желаемой выходной

OnCreate

ArrayList<McqQuestionBean> mcqQuestionBeans= new ArrayList<McqQuestionBean>(); 
     adapter = new NewsFragmentPagerAdapter(getSupportFragmentManager(), 
       mcqQuestionBeans, MCQTestActivity.this); 
     pager.setAdapter(adapter); 

Базовый адаптер

public class NewsFragmentPagerAdapter extends FragmentStatePagerAdapter { 

private ArrayList<McqQuestionBean> mcqQuestionBeans; 

private McqQuestionFragment fragment; 
private Activity context; 

public NewsFragmentPagerAdapter(FragmentManager fm, ArrayList<McqQuestionBean> mcqQuestionBeans, Activity context) { 
    super(fm); 
    this.mcqQuestionBeans = mcqQuestionBeans; 

    this.context = context; 

} 

public void update(ArrayList<McqQuestionBean> mcqQuestionBeans) { 
    this.mcqQuestionBeans = mcqQuestionBeans; 
    notifyDataSetChanged(); 
} 

@Override 
public int getCount() { 
    return mcqQuestionBeans.size(); 
} 

@Override 
public int getItemPosition(Object object) { 
    // TODO Auto-generated method stub 
    return super.getItemPosition(object); 
} 

@Override 
public Fragment getItem(int position) { 

    fragment = McqQuestionFragment.newInstance(mcqQuestionBeans.get(position), position, context); 

    return fragment; 

} 

} 

Ваш фрагмент McqQuestionFragment

public class McqQuestionFragment extends Fragment { 

private int position, porrefid; 
    private String question; 
    private ArrayList<McqQuestionChoiceBean> choices; 



@SuppressWarnings("unchecked") 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     // TODO Auto-generated method stub 
     super.onCreate(savedInstanceState); 
     position = getArguments().getInt("position"); 
     porrefid = getArguments().getInt("porrefid"); 
     userMarkedOn = getArguments().getInt("userMarkedOn"); 
     question = getArguments().getString("question"); 
     choices = (ArrayList<McqQuestionChoiceBean>) getArguments() 
       .getSerializable("choices"); 
    } 

    public static McqQuestionFragment newInstance(
      McqQuestionBean mcqQuestionBean, int position, Activity activity) { 
     final McqQuestionFragment f = new McqQuestionFragment(); 
     final Bundle args = new Bundle(); 
     args.putString("question", mcqQuestionBean.getQuestion()); 
     args.putInt("position", position); 
     args.putInt("userMarkedOn", mcqQuestionBean.getUserCorrectedOn()); 
     args.putSerializable("choices", mcqQuestionBean.getChoices()); 
     args.putInt("porrefid", mcqQuestionBean.getPorrefid()); 
     f.setArguments(args); 

     return f; 
    } 

}