aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml7
-rw-r--r--Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityShowPosts.kt12
-rw-r--r--Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/NavigationActivity.kt11
-rw-r--r--Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ShowPostsAdapter.kt35
-rw-r--r--Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentShowPosts.kt69
-rw-r--r--Client/BrzoDoLokacije/app/src/main/res/drawable/filter.pngbin829 -> 1509 bytes
-rw-r--r--Client/BrzoDoLokacije/app/src/main/res/drawable/grid.pngbin0 -> 661 bytes
-rw-r--r--Client/BrzoDoLokacije/app/src/main/res/drawable/list.webpbin0 -> 174 bytes
-rw-r--r--Client/BrzoDoLokacije/app/src/main/res/drawable/rounded_picture_background.xml2
-rw-r--r--Client/BrzoDoLokacije/app/src/main/res/layout/activity_show_posts.xml7
-rw-r--r--Client/BrzoDoLokacije/app/src/main/res/layout/fragment_show_posts.xml81
-rw-r--r--Client/BrzoDoLokacije/app/src/main/res/layout/post_preview.xml29
12 files changed, 204 insertions, 49 deletions
diff --git a/Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml b/Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml
index 7a257ec..f6e0fc5 100644
--- a/Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml
+++ b/Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml
@@ -16,13 +16,6 @@
android:usesCleartextTraffic="true"
tools:targetApi="31">
<activity
- android:name=".Activities.ActivityShowPosts"
- android:exported="false">
- <meta-data
- android:name="android.app.lib_name"
- android:value="" />
- </activity>
- <activity
android:name=".Activities.SplashPage"
android:exported="true">
<intent-filter>
diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityShowPosts.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityShowPosts.kt
deleted file mode 100644
index d1ad0a9..0000000
--- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityShowPosts.kt
+++ /dev/null
@@ -1,12 +0,0 @@
-package com.example.brzodolokacije.Activities
-
-import androidx.appcompat.app.AppCompatActivity
-import android.os.Bundle
-import com.example.brzodolokacije.R
-
-class ActivityShowPosts : AppCompatActivity() {
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_show_posts)
- }
-} \ No newline at end of file
diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/NavigationActivity.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/NavigationActivity.kt
index 0933460..d36dbae 100644
--- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/NavigationActivity.kt
+++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/NavigationActivity.kt
@@ -5,10 +5,7 @@ import android.os.Bundle
import android.view.View
import android.widget.Button
import androidx.fragment.app.Fragment
-import com.example.brzodolokacije.Fragments.FragmentAddPost
-import com.example.brzodolokacije.Fragments.FragmentBrowse
-import com.example.brzodolokacije.Fragments.FragmentHome
-import com.example.brzodolokacije.Fragments.FragmentProfile
+import com.example.brzodolokacije.Fragments.*
import com.example.brzodolokacije.R
import com.google.android.material.bottomnavigation.BottomNavigationView
@@ -17,15 +14,15 @@ class NavigationActivity : AppCompatActivity() {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_navigation)
- val homeFragment=FragmentHome()
+ val fragmentShowPosts=FragmentShowPosts()
val browseFragment=FragmentBrowse()
val addPostFragment=FragmentAddPost()
val profileFragment=FragmentProfile()
val bottomNav=findViewById<View>(R.id.bottomNavigationView) as BottomNavigationView
- setCurrentFragment(homeFragment)
+ setCurrentFragment(fragmentShowPosts)
bottomNav.setOnNavigationItemSelectedListener {
when(it.itemId){
- R.id.navHome->setCurrentFragment(homeFragment)
+ R.id.navHome->setCurrentFragment(fragmentShowPosts)
R.id.navAddPost->setCurrentFragment(addPostFragment)
R.id.navBrowse->setCurrentFragment(browseFragment)
R.id.navProfile->setCurrentFragment(profileFragment)
diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ShowPostsAdapter.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ShowPostsAdapter.kt
new file mode 100644
index 0000000..c8a0b77
--- /dev/null
+++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Adapters/ShowPostsAdapter.kt
@@ -0,0 +1,35 @@
+package com.example.brzodolokacije.Adapters
+
+import android.view.LayoutInflater
+import android.view.ViewGroup
+import androidx.recyclerview.widget.RecyclerView
+import com.example.brzodolokacije.Models.ListItemModel
+import com.example.brzodolokacije.Models.Post
+import com.example.brzodolokacije.databinding.ListItemBinding
+import com.example.brzodolokacije.databinding.PostPreviewBinding
+
+class ShowPostsAdapter (val items : MutableList<Post>)
+ : RecyclerView.Adapter<ShowPostsAdapter.ViewHolder>(){
+ //constructer has one argument - list of objects that need to be displayed
+ //it is bound to xml of single item
+ private lateinit var binding: PostPreviewBinding
+ override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
+ val inflater = LayoutInflater.from(parent.context)
+ binding=PostPreviewBinding.inflate(inflater,parent,false)
+ return ViewHolder(binding)
+ }
+ override fun onBindViewHolder(holder: ViewHolder, position: Int){
+ //sets components of particular item
+ holder.bind(items[position])
+ }
+ override fun getItemCount() = items.size
+ inner class ViewHolder(itemView : PostPreviewBinding) : RecyclerView.ViewHolder(itemView.root){
+ fun bind(item : Post){
+ binding.apply {
+ tvTitle.text=item.location.name
+ tvLocationParent.text=item.location.country
+ tvLocationType.text=item.location.type.toString()
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentShowPosts.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentShowPosts.kt
new file mode 100644
index 0000000..8dcef02
--- /dev/null
+++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentShowPosts.kt
@@ -0,0 +1,69 @@
+package com.example.brzodolokacije.Fragments
+
+import android.os.Bundle
+import androidx.fragment.app.Fragment
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.recyclerview.widget.LinearLayoutManager
+import androidx.recyclerview.widget.RecyclerView
+import com.example.brzodolokacije.Adapters.SampleAdapter
+import com.example.brzodolokacije.Adapters.ShowPostsAdapter
+import com.example.brzodolokacije.Models.ListItemModel
+import com.example.brzodolokacije.Models.Location
+import com.example.brzodolokacije.Models.LocationTypes
+import com.example.brzodolokacije.Models.Post
+import com.example.brzodolokacije.R
+import com.example.brzodolokacije.databinding.FragmentHomeBinding
+
+
+class FragmentShowPosts : Fragment() {
+
+ private lateinit var binding: FragmentShowPosts
+ private var posts : MutableList<Post> = mutableListOf()
+ private var layoutManagerVar: RecyclerView.LayoutManager? = null
+ private var adapterVar: RecyclerView.Adapter<ShowPostsAdapter.ViewHolder>? = null
+ private var recyclerView: RecyclerView?=null
+
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+ //load data for the list
+ loadData()
+ //instantiate adapter and linearLayout
+ adapterVar=ShowPostsAdapter(posts)
+ layoutManagerVar= LinearLayoutManager(activity)
+ }
+
+ private fun loadData() {
+ posts.add(Post("123","213",
+ Location("asd","Ajfelov toranj","Pariz",
+ "Francuska","idk","asda","asdsd",LocationTypes.Grad),"opsiopsaid",1.1,56,
+ mutableListOf(),mutableListOf()))
+ posts.add(Post("123","213",
+ Location("asd","Ajfelov toranj","Pariz",
+ "Francuska","idk","asda","asdsd",LocationTypes.Grad),"opsiopsaid",1.1,56,
+ mutableListOf(),mutableListOf(),))
+ posts.add(Post("123","213",
+ Location("asd","Ajfelov toranj","Pariz",
+ "Francuska","idk","asda","asdsd",LocationTypes.Grad),"opsiopsaid",1.1,56,
+ mutableListOf(),mutableListOf(),))
+ posts.add(Post("123","213",
+ Location("asd","Ajfelov toranj","Pariz",
+ "Francuska","idk","asda","asdsd",LocationTypes.Grad),"opsiopsaid",1.1,56,
+ mutableListOf(),mutableListOf(),))
+ }
+
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ val rootView = inflater?.inflate(R.layout.fragment_show_posts, container, false)
+ recyclerView = rootView?.findViewById(R.id.rvMain)
+ // set recyclerView attributes
+ recyclerView?.setHasFixedSize(true)
+ recyclerView?.layoutManager = layoutManagerVar
+ recyclerView?.adapter = adapterVar
+ return rootView
+ }
+
+} \ No newline at end of file
diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/filter.png b/Client/BrzoDoLokacije/app/src/main/res/drawable/filter.png
index 8cf4b39..4342c2c 100644
--- a/Client/BrzoDoLokacije/app/src/main/res/drawable/filter.png
+++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/filter.png
Binary files differ
diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/grid.png b/Client/BrzoDoLokacije/app/src/main/res/drawable/grid.png
new file mode 100644
index 0000000..03d9ef9
--- /dev/null
+++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/grid.png
Binary files differ
diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/list.webp b/Client/BrzoDoLokacije/app/src/main/res/drawable/list.webp
new file mode 100644
index 0000000..608932f
--- /dev/null
+++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/list.webp
Binary files differ
diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/rounded_picture_background.xml b/Client/BrzoDoLokacije/app/src/main/res/drawable/rounded_picture_background.xml
index 85f54be..2f898b0 100644
--- a/Client/BrzoDoLokacije/app/src/main/res/drawable/rounded_picture_background.xml
+++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/rounded_picture_background.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
- <corners android:radius="40dp"/>
+ <corners android:radius="20dp"/>
<solid android:color="#FFFFFF"></solid>
</shape>
diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/activity_show_posts.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/activity_show_posts.xml
deleted file mode 100644
index 20c7560..0000000
--- a/Client/BrzoDoLokacije/app/src/main/res/layout/activity_show_posts.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<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="match_parent"
- tools:context=".Activities.ActivityShowPosts"/> \ No newline at end of file
diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_show_posts.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_show_posts.xml
new file mode 100644
index 0000000..4565b74
--- /dev/null
+++ b/Client/BrzoDoLokacije/app/src/main/res/layout/fragment_show_posts.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:orientation="vertical"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ tools:context=".Fragments.FragmentShowPosts">
+
+ <EditText
+ android:id="@+id/editTextTextPersonName2"
+ android:layout_width="wrap_content"
+ android:layout_height="50dp"
+ android:layout_gravity="center_horizontal"
+ android:ems="10"
+ android:inputType="textPersonName"
+ android:text="Name" />
+
+ <androidx.constraintlayout.widget.ConstraintLayout
+ android:layout_width="match_parent"
+ android:layout_height="50dp">
+
+
+ <ImageButton
+ android:id="@+id/button3"
+ android:layout_width="50dp"
+ android:layout_height="50dp"
+ android:layout_alignParentRight="true"
+ android:src="@drawable/filter"
+ android:scaleType="centerCrop"
+ android:background="@color/white"/>
+
+ <ImageButton
+ android:id="@+id/imageButton1"
+ android:layout_width="50dp"
+ android:layout_height="50dp"
+ android:layout_marginStart="8dp"
+ android:layout_weight="1"
+ android:scaleType="centerCrop"
+ android:src="@drawable/sort"
+ app:layout_constraintStart_toEndOf="@+id/button3"
+ tools:layout_editor_absoluteY="0dp"
+ android:background="@color/white"/>
+
+ <ImageButton
+ android:id="@+id/imageButton2"
+ android:layout_width="50dp"
+ android:layout_height="50dp"
+ android:layout_marginEnd="16dp"
+ android:layout_weight="1"
+ android:background="@color/white"
+ android:scaleType="centerCrop"
+ android:src="@drawable/list"
+ app:layout_constraintEnd_toStartOf="@+id/imageButton3"
+ app:layout_constraintHorizontal_bias="1.0"
+ app:layout_constraintStart_toEndOf="@+id/imageButton1"
+ tools:layout_editor_absoluteY="0dp" />
+
+ <ImageButton
+ android:id="@+id/imageButton3"
+ android:layout_width="50dp"
+ android:layout_height="50dp"
+ android:layout_marginStart="248dp"
+ android:layout_weight="1"
+ android:background="@color/white"
+ android:scaleType="centerCrop"
+ android:src="@drawable/grid"
+ app:layout_constraintStart_toEndOf="@+id/imageButton1"
+ tools:layout_editor_absoluteY="0dp" />
+ </androidx.constraintlayout.widget.ConstraintLayout>
+
+ <androidx.recyclerview.widget.RecyclerView
+ android:id="@+id/rvMain"
+ android:layout_width="match_parent"
+ android:layout_height="823dp"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toTopOf="parent" >
+
+ </androidx.recyclerview.widget.RecyclerView>
+
+</LinearLayout> \ No newline at end of file
diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/post_preview.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/post_preview.xml
index 48a3289..a3642e2 100644
--- a/Client/BrzoDoLokacije/app/src/main/res/layout/post_preview.xml
+++ b/Client/BrzoDoLokacije/app/src/main/res/layout/post_preview.xml
@@ -4,13 +4,15 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ android:layout_padding="5dp"
+ android:layout_margin="0dp"
android:layout_margin="0dp"
android:background="@drawable/rounded_picture_background"
android:clipToOutline="true"
>
<ImageView
- android:id="@+id/imageView8"
+ android:id="@+id/locationImage"
android:layout_width="match_parent"
android:layout_height="330dp"
android:outlineProvider="background"
@@ -23,19 +25,19 @@
app:layout_constraintVertical_bias="0.0" />
<View
- android:id="@+id/view"
+ android:id="@+id/vBanner"
android:layout_width="match_parent"
android:layout_height="80dp"
android:background="@color/dark_blue_transparent"
android:outlineProvider="background"
- app:layout_constraintBottom_toBottomOf="@+id/imageView8"
+ app:layout_constraintBottom_toBottomOf="@+id/locationImage"
tools:layout_editor_absoluteX="0dp">
</View>
<TextView
- android:id="@+id/textView5"
+ android:id="@+id/tvTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="top|left"
@@ -45,37 +47,34 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.076"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="@+id/view"
+ app:layout_constraintTop_toTopOf="@+id/vBanner"
app:layout_constraintVertical_bias="0.18" />
<TextView
- android:id="@+id/textView6"
+ android:id="@+id/tvLocationType"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Tip lokacije"
android:textColor="@color/white"
- app:layout_constraintBottom_toBottomOf="@+id/imageView8"
- app:layout_constraintEnd_toStartOf="@+id/textView7"
+ app:layout_constraintBottom_toBottomOf="@+id/vBanner"
+ app:layout_constraintEnd_toStartOf="@+id/tvLocationParent"
app:layout_constraintHorizontal_bias="0.112"
app:layout_constraintStart_toStartOf="parent"
-
- app:layout_constraintTop_toTopOf="@+id/view"
+ app:layout_constraintTop_toTopOf="@+id/vBanner"
app:layout_constraintVertical_bias="0.721" />
<TextView
- android:id="@+id/textView7"
+ android:id="@+id/tvLocationParent"
android:layout_width="wrap_content"
android:layout_height="match_parent"
- android:layout_gravity="right"
- android:gravity="right"
android:text="grad, drzava"
- android:textAlignment="gravity"
+ android:textAlignment="viewEnd"
android:textColor="@color/white"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.952"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="@+id/view"
+ app:layout_constraintTop_toTopOf="@+id/vBanner"
app:layout_constraintVertical_bias="0.737" />