Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
I
InstiApp
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Analytics
Analytics
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
RAHUL SHARMA
InstiApp
Commits
ab38e246
Commit
ab38e246
authored
Jun 26, 2018
by
Varun Patil
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add event cards to body
parent
a2bf6767
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
143 additions
and
34 deletions
+143
-34
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/adapter/EventAdapter.java
...ava/in/ac/iitb/gymkhana/iitbapp/adapter/EventAdapter.java
+74
-1
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/fragment/BodyFragment.java
...va/in/ac/iitb/gymkhana/iitbapp/fragment/BodyFragment.java
+21
-0
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/fragment/EventFragment.java
...a/in/ac/iitb/gymkhana/iitbapp/fragment/EventFragment.java
+1
-10
app/src/main/res/layout/fragment_body.xml
app/src/main/res/layout/fragment_body.xml
+1
-14
app/src/main/res/layout/fragment_event_card.xml
app/src/main/res/layout/fragment_event_card.xml
+46
-9
No files found.
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/adapter/EventAdapter.java
View file @
ab38e246
package
in.ac.iitb.gymkhana.iitbapp.adapter
;
public
class
EventAdapter
{
import
android.content.Context
;
import
android.support.v7.widget.RecyclerView
;
import
android.view.LayoutInflater
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.widget.ImageView
;
import
android.widget.TextView
;
import
com.squareup.picasso.Picasso
;
import
java.util.List
;
import
in.ac.iitb.gymkhana.iitbapp.ItemClickListener
;
import
in.ac.iitb.gymkhana.iitbapp.R
;
import
in.ac.iitb.gymkhana.iitbapp.data.Event
;
public
class
EventAdapter
extends
RecyclerView
.
Adapter
<
EventAdapter
.
ViewHolder
>{
private
List
<
Event
>
eventList
;
private
ItemClickListener
itemClickListener
;
private
Context
context
;
public
EventAdapter
(
List
<
Event
>
eventList
,
ItemClickListener
itemClickListener
){
this
.
eventList
=
eventList
;
this
.
itemClickListener
=
itemClickListener
;
}
@Override
public
ViewHolder
onCreateViewHolder
(
ViewGroup
parent
,
int
viewType
)
{
context
=
parent
.
getContext
();
View
v
=
LayoutInflater
.
from
(
context
)
.
inflate
(
R
.
layout
.
fragment_event_card
,
parent
,
false
);
final
ViewHolder
postViewHolder
=
new
ViewHolder
(
v
);
v
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
view
)
{
itemClickListener
.
onItemClick
(
view
,
postViewHolder
.
getAdapterPosition
());
}
});
return
postViewHolder
;
}
@Override
public
void
onBindViewHolder
(
ViewHolder
holder
,
int
position
)
{
Event
event
=
eventList
.
get
(
position
);
holder
.
name
.
setText
(
event
.
getEventName
());
holder
.
description
.
setText
(
event
.
getEventStartTime
().
toString
());
Picasso
.
with
(
context
).
load
(
event
.
getEventImageURL
()).
into
(
holder
.
image
);
}
@Override
public
int
getItemCount
()
{
return
eventList
.
size
();
}
public
class
ViewHolder
extends
RecyclerView
.
ViewHolder
{
public
TextView
name
;
public
TextView
description
;
public
ImageView
image
;
public
ViewHolder
(
View
itemView
)
{
super
(
itemView
);
name
=
(
TextView
)
itemView
.
findViewById
(
R
.
id
.
event_card_name
);
description
=
(
TextView
)
itemView
.
findViewById
(
R
.
id
.
event_card_description
);
image
=
(
ImageView
)
itemView
.
findViewById
(
R
.
id
.
event_card_avatar
);
}
}
}
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/fragment/BodyFragment.java
View file @
ab38e246
...
...
@@ -29,6 +29,7 @@ import in.ac.iitb.gymkhana.iitbapp.MainActivity;
import
in.ac.iitb.gymkhana.iitbapp.R
;
import
in.ac.iitb.gymkhana.iitbapp.ShareURLMaker
;
import
in.ac.iitb.gymkhana.iitbapp.adapter.BodyAdapter
;
import
in.ac.iitb.gymkhana.iitbapp.adapter.EventAdapter
;
import
in.ac.iitb.gymkhana.iitbapp.api.RetrofitInterface
;
import
in.ac.iitb.gymkhana.iitbapp.api.ServiceGenerator
;
import
in.ac.iitb.gymkhana.iitbapp.data.AppDatabase
;
...
...
@@ -157,6 +158,26 @@ public class BodyFragment extends Fragment {
startActivity
(
Intent
.
createChooser
(
i
,
"Share URL"
));
}
});
/* Initialize events */
final
List
<
Event
>
eventList
=
body
.
getBodyEvents
();
RecyclerView
eventRecyclerView
=
(
RecyclerView
)
getActivity
().
findViewById
(
R
.
id
.
event_card_recycler_view
);
EventAdapter
eventAdapter
=
new
EventAdapter
(
eventList
,
new
ItemClickListener
()
{
@Override
public
void
onItemClick
(
View
v
,
int
position
)
{
Event
event
=
eventList
.
get
(
position
);
Bundle
bundle
=
new
Bundle
();
bundle
.
putString
(
Constants
.
EVENT_JSON
,
new
Gson
().
toJson
(
event
));
EventFragment
eventFragment
=
new
EventFragment
();
eventFragment
.
setArguments
(
bundle
);
FragmentTransaction
ft
=
getActivity
().
getSupportFragmentManager
().
beginTransaction
();
ft
.
replace
(
R
.
id
.
framelayout_for_fragment
,
eventFragment
,
eventFragment
.
getTag
());
ft
.
addToBackStack
(
eventFragment
.
getTag
());
ft
.
commit
();
}
});
eventRecyclerView
.
setAdapter
(
eventAdapter
);
eventRecyclerView
.
setLayoutManager
(
new
LinearLayoutManager
(
getContext
()));
}
@Override
...
...
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/fragment/EventFragment.java
View file @
ab38e246
...
...
@@ -105,17 +105,8 @@ public class EventFragment extends BaseFragment implements View.OnClickListener
eventVenueName
.
append
(
", "
).
append
(
venue
.
getVenueName
());
}
/* if(((LinearLayout) getActivity().findViewById(R.id.body_container)).getChildCount() == 0) {
for (Body body : event.getEventBodies()) {
Fragment bodyCardFragment = BodyCardFragment.newInstance(body);
getChildFragmentManager().beginTransaction()
.add(R.id.body_container, bodyCardFragment, getTag())
.disallowAddToBackStack()
.commit();
}
}*/
final
List
<
Body
>
bodyList
=
event
.
getEventBodies
();
bodyRecyclerView
=
(
RecyclerView
)
getActivity
().
findViewById
(
R
.
id
.
body_card_recycler_view
);
bodyRecyclerView
=
(
RecyclerView
)
getActivity
().
findViewById
(
R
.
id
.
body_card_recycler_view
);
BodyAdapter
bodyAdapter
=
new
BodyAdapter
(
bodyList
,
new
ItemClickListener
()
{
@Override
public
void
onItemClick
(
View
v
,
int
position
)
{
...
...
app/src/main/res/layout/fragment_body.xml
View file @
ab38e246
...
...
@@ -121,24 +121,11 @@
android:textSize=
"16sp"
/>
<android.support.v7.widget.RecyclerView
android:id=
"@+id/
body
_card_recycler_view"
android:id=
"@+id/
event
_card_recycler_view"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"10dp"
/>
</LinearLayout>
</ScrollView>
<ScrollView
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
>
</LinearLayout>
</ScrollView>
</FrameLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_event_card.xml
View file @
ab38e246
<?xml version="1.0" encoding="utf-8"?>
<
FrameLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:
tools=
"http://schemas.android.com/tools
"
<
android.support.v7.widget.CardView
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:
card_view=
"http://schemas.android.com/apk/res-auto
"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
tools:context=
".fragment.EventCardFragment"
>
android:layout_height=
"wrap_content"
android:layout_marginBottom=
"4dp"
android:layout_marginLeft=
"8dp"
android:layout_marginRight=
"8dp"
android:layout_marginTop=
"4dp"
card_view:cardCornerRadius=
"4dp"
card_view:cardElevation=
"4dp"
>
<LinearLayout
android:id=
"@+id/body_card_layout"
android:layout_width=
"match_parent"
android:layout_height=
"80dp"
android:orientation=
"horizontal"
>
<ImageView
android:id=
"@+id/event_card_avatar"
android:layout_width=
"80dp"
android:layout_height=
"80dp"
android:layout_gravity=
"center"
android:scaleType=
"centerCrop"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_marginLeft=
"12dp"
android:layout_marginRight=
"12dp"
android:layout_weight=
"3"
android:orientation=
"vertical"
>
<!-- TODO: Update blank fragment layout -->
<TextView
android:id=
"@+id/event_card_name"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:text=
"@string/hello_blank_fragment"
/>
android:layout_height=
"wrap_content"
android:text=
"Event"
android:textColor=
"@android:color/black"
android:textSize=
"18sp"
/>
<TextView
android:id=
"@+id/event_card_description"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"Description"
/>
</FrameLayout>
\ No newline at end of file
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment