import android.os.Bundle;
+import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
+import android.support.v4.app.FragmentManager;
+import android.support.v4.app.FragmentPagerAdapter;
+import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.List;
+
import de.dhbwloe.campusapp.CampusAppFragment;
import de.dhbwloe.campusapp.R;
import de.dhbwloe.campusapp.search.SearchIndices;
* A simple {@link Fragment} subclass.
*/
public class Vorlesungsplan extends CampusAppFragment {
+ public interface VorlesungsplanFragment {
+ void setActive();
+ }
+
/* implement this for search results ;) */
public static SearchIndices[] GetSearchIndices() {
return new SearchIndices[] {
new SearchIndices("Vorlesungsplan", true) {{
setUpdateTime(1);
setTarget("#Vorlesungsplan");
- setTitle("Vorlesungsplan");
- setDescription("Vorlesungsplan dienes Kurses");
- addKeyWord("vorlesung, vorlesungen, plan, vorlesungsplan, stundenplan, termin, termine, kursplan, blockplan, block, zeit, zeiten");
+ setTitle(R.string.search_vorlesungsplan_title);
+ setDescription(R.string.search_vorlesungsplan_description);
+ addKeyWord(R.string.search_vorlesungsplan_keywords);
+ }},
+ new SearchIndices("Vorlesungsplan", true) {{
+ setUpdateTime(1);
+ setTarget("#Vorlesungsplan#view=exams");
+ setTitle(R.string.search_vorlesungsplan_klausur_title);
+ setDescription(R.string.search_vorlesungsplan_klausur_description);
+ addKeyWord(R.string.search_vorlesungsplan_klausur_keywords);
}},
};
}
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_vorlesungsplan, container, false);
- AppContext.setTitle("Vorlesungsplan");
+ AppContext.setTitle(AppContext.getResString(R.string.vorlesungsplan_title));
+
+ ViewPager pager = (ViewPager) view.findViewById(R.id.viewpager);
+ setupViewPager(pager);
+
+ TabLayout tabLayout = (TabLayout) view.findViewById(R.id.tabs);
+ tabLayout.setupWithViewPager(pager);
return view;
}
+ private void setupViewPager(ViewPager viewPager) {
+ final ViewPagerAdapter adapter = new ViewPagerAdapter(getChildFragmentManager());
+
+ adapter.addFragment(new VorlesungsplanUpcoming(), AppContext.getResString(R.string.vorlesungsplan_upcoming));
+ adapter.addFragment(new VorlesungsplanGroups(), AppContext.getResString(R.string.vorlesungsplan_groups));
+ adapter.addFragment(new VorlesungsplanExams(), AppContext.getResString(R.string.vorlesungsplan_exams));
+
+ viewPager.setAdapter(adapter);
+ viewPager.setCurrentItem(0);
+
+ VorlesungsplanFragment fragment = (VorlesungsplanFragment)adapter.getItem(0);
+ fragment.setActive();
+
+
+ viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
+ @Override
+ public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
+
+ }
+
+ @Override
+ public void onPageSelected(int position) {
+ VorlesungsplanFragment fragment = (VorlesungsplanFragment)adapter.getItem(position);
+ fragment.setActive();
+ }
+
+ @Override
+ public void onPageScrollStateChanged(int state) {
+
+ }
+ });
+ }
+
+ class ViewPagerAdapter extends FragmentPagerAdapter {
+ private final List<Fragment> mFragmentList = new ArrayList<>();
+ private final List<String> mFragmentTitleList = new ArrayList<>();
+
+ public ViewPagerAdapter(FragmentManager manager) {
+ super(manager);
+ }
+
+ @Override
+ public Fragment getItem(int position) {
+ return mFragmentList.get(position);
+ }
+
+ @Override
+ public int getCount() {
+ return mFragmentList.size();
+ }
+
+ public void addFragment(Fragment fragment, String title) {
+ mFragmentList.add(fragment);
+ mFragmentTitleList.add(title);
+ }
+
+ @Override
+ public CharSequence getPageTitle(int position) {
+ return mFragmentTitleList.get(position);
+ }
+ }
+
}