diff options
6 files changed, 49 insertions, 42 deletions
diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ShowPostsHomePageAdapter.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ShowPostsHomePageAdapter.kt index c5bdcb3..62a4636 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ShowPostsHomePageAdapter.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ShowPostsHomePageAdapter.kt @@ -1,5 +1,6 @@ package com.example.brzodolokacije.Adapters +import android.util.Log import android.view.LayoutInflater import android.view.View import android.view.ViewGroup @@ -9,9 +10,10 @@ import androidx.recyclerview.widget.RecyclerView import com.example.brzodolokacije.Models.PostPreview import com.example.brzodolokacije.R -class ShowPopularPostsAdapter(var postPreview:MutableList<PostPreview>): +class ShowPostsHomePageAdapter(var postPreview:MutableList<PostPreview>): RecyclerView.Adapter<PostViewHolder>() { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): PostViewHolder { + Log.d("main","***********************************************adapter******************************************************") val view=LayoutInflater.from(parent.context).inflate(R.layout.post_item_home_page,parent,false) return PostViewHolder(view) } @@ -30,7 +32,7 @@ class PostViewHolder(view: View):RecyclerView.ViewHolder(view){ private val locationName:TextView=view.findViewById(R.id.tvPIHPLocationName) fun bindView(postPreview:PostPreview){ - background.setImageURI(postPreview.images[0]._id.toUri()) + //background.setImageURI(postPreview.images[0]._id.to) locationName.text=postPreview.location.name } }
\ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentHomePage.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentHomePage.kt index 59fa7ee..874d9de 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentHomePage.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentHomePage.kt @@ -1,19 +1,20 @@ package com.example.brzodolokacije.Fragments -import android.media.CamcorderProfile.getAll import android.os.Bundle -import android.util.Log -import androidx.fragment.app.Fragment import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import android.widget.Button import android.widget.Toast +import androidx.fragment.app.Fragment +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView +import com.example.brzodolokacije.Adapters.ShowPostsHomePageAdapter import com.example.brzodolokacije.Interfaces.IBackendApi import com.example.brzodolokacije.Models.PostPreview import com.example.brzodolokacije.R import com.example.brzodolokacije.Services.RetrofitHelper.baseUrl import com.example.brzodolokacije.Services.SharedPreferencesHelper +import kotlinx.android.synthetic.main.activity_single_post.view.* import retrofit2.Call import retrofit2.Callback import retrofit2.Response @@ -23,9 +24,10 @@ import retrofit2.converter.gson.GsonConverterFactory class FragmentHomePage : Fragment() { private lateinit var posts : MutableList<PostPreview> private lateinit var mostViewedPosts : MutableList<PostPreview> - private lateinit var recommendedPosts : MutableList<PostPreview> + private lateinit var newestPosts : MutableList<PostPreview> private lateinit var bestRatedPosts:MutableList<PostPreview> - + private lateinit var rvPopular: RecyclerView + private lateinit var rvNewest:RecyclerView /* override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -38,16 +40,11 @@ class FragmentHomePage : Fragment() { // Inflate the layout for this fragment var view:View= inflater.inflate(R.layout.fragment_home_page, container, false) - - //pokupi sve objave iz baze - - /*Toast.makeText( - activity, "get all 1", Toast.LENGTH_LONG - ).show();*/ + rvPopular=view.findViewById(R.id.rvFragmentHomePagePopular) + rvNewest=view.findViewById(R.id.rvFragmentHomePageLatest) + //pokupi sve objave iz baze' getAllPosts() - //getMostViewedPosts() - //getRecommendedPosts() - //getBestRatedPosts() + @@ -80,8 +77,8 @@ class FragmentHomePage : Fragment() { activity, "get all ", Toast.LENGTH_LONG ).show(); posts = response.body()!!.toMutableList<PostPreview>() - getMostViewedPosts(posts) - getRecommendedPosts(posts) + getPopularPosts(posts) + getNewestPosts(posts) getBestRatedPosts(posts) } @@ -93,20 +90,29 @@ class FragmentHomePage : Fragment() { }) } - private fun getMostViewedPosts(allPosts:MutableList<PostPreview>){ + private fun getPopularPosts(allPosts:MutableList<PostPreview>){//most viewed Toast.makeText( activity, "get all mv ", Toast.LENGTH_LONG ).show(); mostViewedPosts=allPosts mostViewedPosts.sortByDescending { it.views } + rvPopular.apply { + layoutManager=LinearLayoutManager(activity,LinearLayoutManager.HORIZONTAL,false) + adapter=ShowPostsHomePageAdapter(mostViewedPosts) + + } } - private fun getRecommendedPosts(allPosts:MutableList<PostPreview>){ + private fun getNewestPosts(allPosts:MutableList<PostPreview>){ Toast.makeText( activity, "get all r ", Toast.LENGTH_LONG ).show(); - recommendedPosts=allPosts - recommendedPosts.sortByDescending { it.ratings } + newestPosts=allPosts/// izmeniti nakon dodavanja datuma u model!!!!!! + newestPosts.sortBy { it.ratings} + rvNewest.apply { + layoutManager=LinearLayoutManager(activity,LinearLayoutManager.HORIZONTAL,false) + adapter=ShowPostsHomePageAdapter(newestPosts) + } } private fun getBestRatedPosts(allPosts:MutableList<PostPreview>){ diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Models/Post.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Models/Post.kt index f24e72f..a1eb5d0 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Models/Post.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Models/Post.kt @@ -35,6 +35,7 @@ data class PostPreview ( var ratings:Float, var comments:List<Comment>?, var images:List<PostImage> + //nedostaju datum i vreme kreiranja ):Parcelable diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home_page.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home_page.xml index eda952d..7d1c73a 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home_page.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_home_page.xml @@ -9,7 +9,7 @@ <!-- TODO: Update blank fragment layout --> <androidx.recyclerview.widget.RecyclerView - android:id="@+id/recyclerView" + android:id="@+id/rvFragmentHomePagePopular" android:layout_width="0dp" android:layout_height="160dp" android:layout_marginStart="16dp" @@ -115,7 +115,7 @@ app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/recyclerView"> + app:layout_constraintTop_toBottomOf="@+id/rvFragmentHomePagePopular"> <LinearLayout android:id="@+id/linearLayout2" @@ -196,6 +196,7 @@ app:layout_constraintTop_toBottomOf="@+id/scrollview" /> <androidx.recyclerview.widget.RecyclerView + android:id="@+id/rvFragmentHomePageLatest" android:layout_width="0dp" android:layout_height="174dp" android:layout_marginStart="16dp" diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/post_item_home_page.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/post_item_home_page.xml index 04515c0..f8ff70e 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/layout/post_item_home_page.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/post_item_home_page.xml @@ -2,34 +2,32 @@ <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" - android:layout_width="match_parent" - android:layout_height="wrap_content"> + android:layout_width="150dp" + android:layout_height="150dp"> <com.google.android.material.imageview.ShapeableImageView android:id="@+id/ivPIHPBackground" android:layout_width="0dp" - android:layout_height="390dp" - android:layout_marginStart="8dp" + android:layout_height="150dp" android:layout_marginTop="8dp" - android:layout_marginEnd="8dp" + android:layout_marginEnd="16dp" android:layout_marginBottom="8dp" android:scaleType="fitXY" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" - app:shapeAppearanceOverlay="@style/imageViewCircle" + app:shapeAppearanceOverlay="@style/Circular" app:srcCompat="@drawable/b1" /> <com.google.android.material.imageview.ShapeableImageView android:id="@+id/ivPIHPMenu" - android:layout_width="match_parent" - android:layout_height="70dp" - android:layout_marginStart="8dp" - android:layout_marginEnd="8dp" + android:layout_width="0dp" + android:layout_height="22dp" app:layout_constraintBottom_toBottomOf="@+id/ivPIHPBackground" - app:layout_constraintEnd_toEndOf="@+id/ivPIHPBackground" + app:layout_constraintEnd_toEndOf="@+id/ivPIHPBackground" + app:layout_constraintHorizontal_bias="0.0" app:layout_constraintStart_toStartOf="@+id/ivPIHPBackground" app:shapeAppearanceOverlay="@style/roundedBottom" app:srcCompat="@color/dark_blue_transparent" /> @@ -38,11 +36,10 @@ android:id="@+id/tvPIHPLocationName" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginStart="52dp" - android:layout_marginTop="8dp" + android:layout_marginStart="8dp" android:text="TextView" - android:textSize="20dp" android:textColor="@color/white" + android:textSize="10dp" app:layout_constraintStart_toStartOf="@+id/ivPIHPMenu" app:layout_constraintTop_toTopOf="@+id/ivPIHPMenu" /> diff --git a/Client/BrzoDoLokacije/app/src/main/res/values/styles.xml b/Client/BrzoDoLokacije/app/src/main/res/values/styles.xml index 798c013..d8a3730 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/values/styles.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/values/styles.xml @@ -11,10 +11,10 @@ <item name="color">@color/white</item> </style> <style name="Circular"> - <item name="cornerSize">20%</item> + <item name="cornerSize">20dp</item> </style> <style name="roundedBottom"> - <item name="cornerSizeBottomLeft">70dp</item> - <item name="cornerSizeBottomRight">70dp</item> + <item name="cornerSizeBottomLeft">20dp</item> + <item name="cornerSizeBottomRight">20dp</item> </style> </resources>
\ No newline at end of file |