From 3e3bb454481318b1efe0068760394fe177a61245 Mon Sep 17 00:00:00 2001 From: Jelena Petrovic Date: Sat, 10 Dec 2022 15:16:51 +0100 Subject: Refresh objave, prikaz objava korisnika odmah nakon otvaranja strane profila #83 --- .../Activities/ActivitySinglePost.kt | 48 ++- .../Activities/ActivityUserProfile.kt | 19 +- .../src/main/res/layout/activity_single_post.xml | 439 +++++++++++---------- 3 files changed, 271 insertions(+), 235 deletions(-) (limited to 'Client') diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivitySinglePost.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivitySinglePost.kt index 623b670..c2f5d12 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivitySinglePost.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivitySinglePost.kt @@ -18,6 +18,8 @@ import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.PagerSnapHelper import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.SnapHelper +import androidx.swiperefreshlayout.widget.SwipeRefreshLayout +import androidx.swiperefreshlayout.widget.SwipeRefreshLayout.OnRefreshListener import com.auth0.android.jwt.JWT import com.example.brzodolokacije.Adapters.CommentsAdapter import com.example.brzodolokacije.Adapters.PostImageAdapter @@ -41,7 +43,8 @@ import retrofit2.Call import retrofit2.Response -class ActivitySinglePost : AppCompatActivity() { +class ActivitySinglePost : AppCompatActivity(),OnRefreshListener { + private lateinit var swipeRefreshLayout: SwipeRefreshLayout private lateinit var binding: ActivitySinglePostBinding private var layoutManagerImages: RecyclerView.LayoutManager? = null private var layoutManagerComments: RecyclerView.LayoutManager? = null @@ -102,21 +105,13 @@ class ActivitySinglePost : AppCompatActivity() { recyclerViewImages?.layoutManager = layoutManagerImages recyclerViewImages?.adapter = adapterImages - loadTextComponents() - var fm: FragmentTransaction =supportFragmentManager.beginTransaction() - val fragment = FragmentSinglePostDescription() - val b = Bundle() - b.putString("post", Gson().toJson(post)) - fragment.arguments = b - fm.replace(R.id.flSinglePostFragmentContainer, fragment) - fm.commit() + setUpFirstFragment() favouriteImage=binding.ivFavourite tagLayout = binding.llTags - loadTags() - loadFavourite() + // set recyclerView attributes @@ -185,8 +180,39 @@ class ActivitySinglePost : AppCompatActivity() { fm.commit() } + swipeRefreshLayout = binding.PostSwipeRefresh + swipeRefreshLayout.setOnRefreshListener(this@ActivitySinglePost) + swipeRefreshLayout.setColorSchemeResources( + R.color.purple_200, + R.color.teal_200, + R.color.dark_blue_transparent, + R.color.purple_700 + ) + } + fun setUpFirstFragment(){ + var fm: FragmentTransaction =supportFragmentManager.beginTransaction() + val fragment = FragmentSinglePostDescription() + val b = Bundle() + b.putString("post", Gson().toJson(post)) + fragment.arguments = b + fm.replace(R.id.flSinglePostFragmentContainer, fragment) + fm.commit() + } + + override fun onRefresh(){ + onResume() } + + override fun onResume(){ + super.onResume() + loadTextComponents() + loadTags() + loadFavourite() + setUpFirstFragment() + swipeRefreshLayout.isRefreshing=false + } + fun loadTags(){ diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityUserProfile.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityUserProfile.kt index 31ff8ff..f7761ce 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityUserProfile.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityUserProfile.kt @@ -174,13 +174,7 @@ class ActivityUserProfile : AppCompatActivity(),OnRefreshListener { showUserPosts.setOnClickListener { - var fm: FragmentTransaction =supportFragmentManager.beginTransaction() - val fragment = FragmentUserPostsProfileActivity() - val b = Bundle() - b.putString("userId", userObject._id.toString()) - fragment.arguments = b - fm.replace(R.id.flActivityProfileFragmentContainer, fragment) - fm.commit() + showUserPostsFragment() } swipeRefreshLayout = findViewById(R.id.ProfileSwipeRefresh) as SwipeRefreshLayout @@ -204,6 +198,17 @@ class ActivityUserProfile : AppCompatActivity(),OnRefreshListener { super.onResume() checkIfAlreadyFollow() updateUserData() + showUserPostsFragment() + } + fun showUserPostsFragment(){ + var fm: FragmentTransaction =supportFragmentManager.beginTransaction() + val fragment = FragmentUserPostsProfileActivity() + val b = Bundle() + b.putString("userId", userObject._id.toString()) + fragment.arguments = b + fm.replace(R.id.flActivityProfileFragmentContainer, fragment) + fm.commit() + swipeRefreshLayout.isRefreshing=false } fun checkIfAlreadyFollow(){ diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/activity_single_post.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/activity_single_post.xml index 4924a1f..ca57739 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/layout/activity_single_post.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/activity_single_post.xml @@ -1,253 +1,258 @@ - - - - + android:id="@+id/PostSwipeRefresh"> - - - + android:layout_height="match_parent" + android:orientation="vertical"> - - - - - - - - - + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintVertical_bias="0.0" /> - - - - - - - - - - - + tools:backgroundTint="@color/white"> - - + - + - + -