ViewPager
ページにカテゴリバーを追加します。カテゴリタイトルはViewPager
ページの変更に従います。私はこれをやろうとしましたが、ViewPager
はうまく動作しますが、タイトルは変更されません。ビューページャのテキスト機能を設定
これはページレイアウトです:
私はPagerAdapter
で以下のコードを追加:
private class MyPagerAdapter extends FragmentPagerAdapter {
public MyPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int pos) {
TextView cate_title = (TextView) getActivity().findViewById(R.id.cate_title);
String title_name = "";
switch(pos) {
case 0:
title_name = "MACARONS";
cate_title.setText(title_name);
return new SP_macarons();
case 1:
title_name = "CHOCOLATE";
cate_title.setText(title_name);
return new SP_chocolate();
case 2:
title_name = "CHEESE MOUSSE";
cate_title.setText(title_name);
return new SP_cheese_mousse();
default:
break;
}
return null;
}
@Override
public int getCount() {
return 3;
}
をして、これはFragment
コードを使用でき
public class SpecialCake extends Fragment {
private ViewPager viewPager;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.special_cake, container, false);
final ViewPager pager = (ViewPager)view.findViewById(R.id.cate_pager);
pager.setAdapter(new MyPagerAdapter(getChildFragmentManager()));
ImageButton prebtn = (ImageButton) view.findViewById(R.id.leftarrow);
prebtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
pager.setCurrentItem(getItem(-1), true); //getItem(-1) for previous
}
private int getItem(int i) {
return pager.getCurrentItem() + i;
}
});
ImageButton nxtbtn = (ImageButton) view.findViewById(R.id.rightarrow);
nxtbtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
pager.setCurrentItem(getItem(+1), true); //getItem(-1) for previous
}
private int getItem(int i) {
return pager.getCurrentItem() + i;
}
});
return view;
}
それは私のための仕事です!しかし私は質問がある 初めて私はページをクリックすると、cate_titleは空白です。 次をクリックして最初のページに戻ると、タイトルが表示されます。 – JsLaw
タイトルを開始時に設定します。 OnpageChangeListenerの前。私は答えにそれを加えました。 – Raghunandan
問題を解決するのに手伝ってくれてありがとう!! – JsLaw