Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -2,22 +2,21 @@ package de.sebse.fuplanner.fragments;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.util.Log;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.TextView;
|
||||
|
||||
import de.sebse.fuplanner.R;
|
||||
import de.sebse.fuplanner.fragments.ModulesFragment.OnModulesFragmentInteractionListener;
|
||||
import de.sebse.fuplanner.services.KVV.Modules;
|
||||
import de.sebse.fuplanner.tools.ui.ItemViewHolder;
|
||||
|
||||
/**
|
||||
* {@link RecyclerView.Adapter} that can display a {@link Modules.Module} and makes a call to the
|
||||
* specified {@link OnModulesFragmentInteractionListener}.
|
||||
* TODO: Replace the implementation with code for your data type.
|
||||
*/
|
||||
public class ModulesRecyclerViewAdapter extends RecyclerView.Adapter<ModulesRecyclerViewAdapter.ViewHolder> {
|
||||
public class ModulesRecyclerViewAdapter extends RecyclerView.Adapter<ItemViewHolder> {
|
||||
|
||||
private Modules mValues;
|
||||
private final OnModulesFragmentInteractionListener mListener;
|
||||
@@ -34,26 +33,26 @@ public class ModulesRecyclerViewAdapter extends RecyclerView.Adapter<ModulesRecy
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
public ItemViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
||||
View view = LayoutInflater.from(parent.getContext())
|
||||
.inflate(R.layout.fragment_modules, parent, false);
|
||||
return new ViewHolder(view);
|
||||
.inflate(R.layout.list_all_items, parent, false);
|
||||
return new ItemViewHolder(view);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(@NonNull final ViewHolder holder, int position) {
|
||||
public void onBindViewHolder(@NonNull ItemViewHolder holder, int position) {
|
||||
if (mValues == null)
|
||||
return;
|
||||
position = holder.getAdapterPosition();
|
||||
holder.mItemPosition = position;
|
||||
holder.mIdView.setText(mValues.get(position).semester);
|
||||
holder.mContentView.setText(mValues.get(position).title);
|
||||
final int finalPosition = holder.getAdapterPosition();
|
||||
holder.mTitle.setText(mValues.get(finalPosition).title);
|
||||
holder.mSubLeft.setText(mValues.get(finalPosition).semester);
|
||||
holder.mSubRight.setText(mValues.get(finalPosition).type);
|
||||
|
||||
holder.mView.setOnClickListener(v -> {
|
||||
if (null != mListener) {
|
||||
// Notify the active callbacks interface (the activity, if the
|
||||
// fragment is attached to one) that an item has been selected.
|
||||
mListener.onModulesFragmentInteraction(holder.mItemPosition);
|
||||
mListener.onModulesFragmentInteraction(finalPosition);
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -61,29 +60,8 @@ public class ModulesRecyclerViewAdapter extends RecyclerView.Adapter<ModulesRecy
|
||||
@Override
|
||||
public int getItemCount() {
|
||||
if (mValues != null) {
|
||||
Log.d("Recycler", String.valueOf(mValues.size()));
|
||||
return mValues.size();
|
||||
}
|
||||
Log.d("Recycler", "0");
|
||||
return 0;
|
||||
}
|
||||
|
||||
public class ViewHolder extends RecyclerView.ViewHolder {
|
||||
public final View mView;
|
||||
public final TextView mIdView;
|
||||
public final TextView mContentView;
|
||||
public int mItemPosition;
|
||||
|
||||
public ViewHolder(View view) {
|
||||
super(view);
|
||||
mView = view;
|
||||
mIdView = view.findViewById(R.id.id);
|
||||
mContentView = view.findViewById(R.id.content);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return super.toString() + " '" + mContentView.getText() + "'";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@ import de.sebse.fuplanner.services.KVV.Modules;
|
||||
import de.sebse.fuplanner.tools.Conversion;
|
||||
import de.sebse.fuplanner.tools.logging.Logger;
|
||||
import de.sebse.fuplanner.tools.ui.CustomViewHolder;
|
||||
import de.sebse.fuplanner.tools.ui.ItemViewHolder;
|
||||
|
||||
public class ModDetailOverviewAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
|
||||
private static final int MAX_ITEMS_PER_PREVIEW = 2;
|
||||
@@ -86,7 +87,7 @@ public class ModDetailOverviewAdapter extends RecyclerView.Adapter<RecyclerView.
|
||||
return new DescriptionViewHolder(view);
|
||||
case TYPE_ITEM:
|
||||
view = LayoutInflater.from(parent.getContext())
|
||||
.inflate(R.layout.list_moddetails_announcements, parent, false);
|
||||
.inflate(R.layout.list_all_items, parent, false);
|
||||
return new ItemViewHolder(view);
|
||||
case TYPE_SHOW_MORE:
|
||||
view = LayoutInflater.from(parent.getContext())
|
||||
@@ -238,21 +239,4 @@ public class ModDetailOverviewAdapter extends RecyclerView.Adapter<RecyclerView.
|
||||
}
|
||||
|
||||
|
||||
public class ItemViewHolder extends CustomViewHolder {
|
||||
final TextView mTitle;
|
||||
final TextView mSubLeft;
|
||||
final TextView mSubRight;
|
||||
|
||||
ItemViewHolder(View view) {
|
||||
super(view);
|
||||
mTitle = view.findViewById(R.id.title);
|
||||
mSubLeft = view.findViewById(R.id.sub_left);
|
||||
mSubRight = view.findViewById(R.id.sub_right);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return super.toString() + " '" + mTitle.getText() + "' '" + mSubLeft.getText() + "' '" + mSubRight.getText() + "'";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -202,8 +202,9 @@ public class Modules /*extends EventEmitter<Triplet<Integer, Modules.UpgradeModu
|
||||
}*/
|
||||
|
||||
private Module(String semester, HashSet<String> lvNumber, String title, HashSet<Lecturer> lecturer, String type, String description, String ID) {
|
||||
semester = semester.replace("Sommersemester", "SS").replace("Wintersemester", "WS");
|
||||
semester = semester.replace("SS", "S");
|
||||
semester = semester.replaceAll("[0-9]{2}([0-9]{2})", "$1");
|
||||
title = title.replaceAll("(.*?) (S[0-9]{2}|W[0-9/]{5})", "$1");
|
||||
|
||||
this.semester = semester;
|
||||
this.lvNumber = lvNumber;
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
package de.sebse.fuplanner.tools.ui;
|
||||
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
|
||||
import de.sebse.fuplanner.R;
|
||||
|
||||
public class ItemViewHolder extends CustomViewHolder {
|
||||
public final TextView mTitle;
|
||||
public final TextView mSubLeft;
|
||||
public final TextView mSubRight;
|
||||
|
||||
public ItemViewHolder(View view) {
|
||||
super(view);
|
||||
mTitle = view.findViewById(R.id.title);
|
||||
mSubLeft = view.findViewById(R.id.sub_left);
|
||||
mSubRight = view.findViewById(R.id.sub_right);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return super.toString() + " '" + mTitle.getText() + "' '" + mSubLeft.getText() + "' '" + mSubRight.getText() + "'";
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user