Commit 316a69ee authored by Varun Patil's avatar Varun Patil

Make first image big in feed

parent 0579a87e
package app.insti.adapter; package app.insti.adapter;
import android.content.Context; import android.content.Context;
import android.media.Image;
import android.support.v7.widget.RecyclerView; import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
...@@ -22,15 +23,21 @@ import app.insti.data.Venue; ...@@ -22,15 +23,21 @@ import app.insti.data.Venue;
public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.ViewHolder> { public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.ViewHolder> {
private List<Event> posts; private List<Event> events;
private Context context; private Context context;
private ItemClickListener itemClickListener; private ItemClickListener itemClickListener;
public FeedAdapter(List<Event> posts, ItemClickListener itemClickListener) { public FeedAdapter(List<Event> events, ItemClickListener itemClickListener) {
this.posts = posts; this.events = events;
this.itemClickListener = itemClickListener; this.itemClickListener = itemClickListener;
} }
@Override
public int getItemViewType(int position) {
if (position == 0) return 1;
else return 2;
}
@Override @Override
public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) { public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
context = viewGroup.getContext(); context = viewGroup.getContext();
...@@ -44,12 +51,13 @@ public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.ViewHolder> { ...@@ -44,12 +51,13 @@ public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.ViewHolder> {
itemClickListener.onItemClick(v, postViewHolder.getAdapterPosition()); itemClickListener.onItemClick(v, postViewHolder.getAdapterPosition());
} }
}); });
return postViewHolder; return postViewHolder;
} }
@Override @Override
public void onBindViewHolder(ViewHolder viewHolder, int i) { public void onBindViewHolder(ViewHolder viewHolder, int i) {
Event currentEvent = posts.get(i); Event currentEvent = events.get(i);
viewHolder.eventTitle.setText(currentEvent.getEventName()); viewHolder.eventTitle.setText(currentEvent.getEventName());
String subtitle = ""; String subtitle = "";
...@@ -75,18 +83,25 @@ public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.ViewHolder> { ...@@ -75,18 +83,25 @@ public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.ViewHolder> {
currentEvent.setEventImageURL(currentEvent.getEventBodies().get(0).getBodyImageURL()); currentEvent.setEventImageURL(currentEvent.getEventBodies().get(0).getBodyImageURL());
} }
Picasso.get().load(currentEvent.getEventImageURL()).into(viewHolder.eventPicture); if (currentEvent.isEventBigImage()) {
viewHolder.eventBigPicture.setVisibility(View.VISIBLE);
viewHolder.eventPicture.setVisibility(View.GONE);
Picasso.get().load(currentEvent.getEventImageURL()).into(viewHolder.eventBigPicture);
} else {
Picasso.get().load(currentEvent.getEventImageURL()).into(viewHolder.eventPicture);
}
} }
@Override @Override
public int getItemCount() { public int getItemCount() {
return posts.size(); return events.size();
} }
public class ViewHolder extends RecyclerView.ViewHolder { public class ViewHolder extends RecyclerView.ViewHolder {
private ImageView eventPicture; private ImageView eventPicture;
private TextView eventTitle; private TextView eventTitle;
private TextView eventSubtitle; private TextView eventSubtitle;
private ImageView eventBigPicture;
public ViewHolder(View itemView) { public ViewHolder(View itemView) {
super(itemView); super(itemView);
...@@ -94,10 +109,11 @@ public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.ViewHolder> { ...@@ -94,10 +109,11 @@ public class FeedAdapter extends RecyclerView.Adapter<FeedAdapter.ViewHolder> {
eventPicture = (ImageView) itemView.findViewById(R.id.object_picture); eventPicture = (ImageView) itemView.findViewById(R.id.object_picture);
eventTitle = (TextView) itemView.findViewById(R.id.object_title); eventTitle = (TextView) itemView.findViewById(R.id.object_title);
eventSubtitle = (TextView) itemView.findViewById(R.id.object_subtitle); eventSubtitle = (TextView) itemView.findViewById(R.id.object_subtitle);
eventBigPicture = (ImageView) itemView.findViewById(R.id.big_object_picture);
} }
} }
public void setPosts(List<Event> posts) { public void setEvents(List<Event> events) {
this.posts = posts; this.events = events;
} }
} }
...@@ -2,6 +2,7 @@ package app.insti.data; ...@@ -2,6 +2,7 @@ package app.insti.data;
import android.arch.persistence.room.ColumnInfo; import android.arch.persistence.room.ColumnInfo;
import android.arch.persistence.room.Entity; import android.arch.persistence.room.Entity;
import android.arch.persistence.room.Ignore;
import android.arch.persistence.room.PrimaryKey; import android.arch.persistence.room.PrimaryKey;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
...@@ -65,6 +66,9 @@ public class Event { ...@@ -65,6 +66,9 @@ public class Event {
@SerializedName("user_ues") @SerializedName("user_ues")
int eventUserUes; int eventUserUes;
@Ignore
boolean eventBigImage = false;
public Event(String eventID, String eventStrID, String eventName, String eventDescription, String eventImageURL, Timestamp eventStartTime, Timestamp eventEndTime, boolean allDayEvent, List<Venue> eventVenues, List<Body> eventBodies, int eventInterestedCount, int eventGoingCount, List<User> eventInterested, List<User> eventGoing, String eventWebsiteURL, int eventUserUes) { public Event(String eventID, String eventStrID, String eventName, String eventDescription, String eventImageURL, Timestamp eventStartTime, Timestamp eventEndTime, boolean allDayEvent, List<Venue> eventVenues, List<Body> eventBodies, int eventInterestedCount, int eventGoingCount, List<User> eventInterested, List<User> eventGoing, String eventWebsiteURL, int eventUserUes) {
this.eventID = eventID; this.eventID = eventID;
this.eventStrID = eventStrID; this.eventStrID = eventStrID;
...@@ -216,4 +220,12 @@ public class Event { ...@@ -216,4 +220,12 @@ public class Event {
public String toString() { public String toString() {
return new Gson().toJson(this); return new Gson().toJson(this);
} }
public boolean isEventBigImage() {
return eventBigImage;
}
public void setEventBigImage(boolean eventBigImage) {
this.eventBigImage = eventBigImage;
}
} }
package app.insti.fragment; package app.insti.fragment;
import android.app.Activity;
import android.os.Bundle; import android.os.Bundle;
import android.support.v4.app.Fragment; import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTransaction; import android.support.v4.app.FragmentTransaction;
...@@ -13,7 +12,6 @@ import android.text.TextWatcher; ...@@ -13,7 +12,6 @@ import android.text.TextWatcher;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.view.inputmethod.InputMethodManager;
import android.widget.EditText; import android.widget.EditText;
import com.google.gson.Gson; import com.google.gson.Gson;
...@@ -163,7 +161,7 @@ public class ExploreFragment extends Fragment { ...@@ -163,7 +161,7 @@ public class ExploreFragment extends Fragment {
// Set adapters data // Set adapters data
bodyAdapter.setBodyList(bodies); bodyAdapter.setBodyList(bodies);
eventsAdapter.setPosts(events); eventsAdapter.setEvents(events);
userAdapter.setUserList(users); userAdapter.setUserList(users);
// Notify all adapters // Notify all adapters
......
...@@ -130,6 +130,11 @@ public class FeedFragment extends BaseFragment { ...@@ -130,6 +130,11 @@ public class FeedFragment extends BaseFragment {
/* Skip if we're already destroyed */ /* Skip if we're already destroyed */
if (getActivity() == null || getView() == null) return; if (getActivity() == null || getView() == null) return;
/* Make first event image big */
if (events.size() > 1) {
events.get(0).setEventBigImage(true);
}
final FeedAdapter feedAdapter = new FeedAdapter(events, new ItemClickListener() { final FeedAdapter feedAdapter = new FeedAdapter(events, new ItemClickListener() {
@Override @Override
public void onItemClick(View v, int position) { public void onItemClick(View v, int position) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment