From d98ff2f7d8a15793b5cc92bd430160c53eb3f8ca Mon Sep 17 00:00:00 2001 From: TAMARA JERINIC Date: Mon, 14 Nov 2022 23:12:15 +0100 Subject: Omogućeno dodavanje objava sa fragmenta za prikaz svih objava ulogovanog korisnika. Izmenjen izgled fragmenata za dodavanje objava. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../brzodolokacije/Activities/ActivityAddPost.kt | 6 +- .../Activities/ActivityCapturePost.kt | 14 ++-- .../brzodolokacije/Fragments/FragmentProfile.kt | 1 + .../brzodolokacije/Fragments/FragmentUserPosts.kt | 80 +++++++++++----------- .../res/drawable/ic_baseline_add_a_photo_24.xml | 5 ++ .../ic_baseline_add_photo_alternate_24.xml | 5 ++ .../main/res/drawable/ic_baseline_post_add_24.xml | 9 +++ .../app/src/main/res/layout/activity_add_post.xml | 50 ++++++++++++-- .../src/main/res/layout/activity_capture_post.xml | 63 +++++++++++++---- .../src/main/res/layout/fragment_user_posts.xml | 30 ++++++-- .../app/src/main/res/values/strings.xml | 2 + 11 files changed, 193 insertions(+), 72 deletions(-) create mode 100644 Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_add_a_photo_24.xml create mode 100644 Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_add_photo_alternate_24.xml create mode 100644 Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_post_add_24.xml (limited to 'Client') diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityAddPost.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityAddPost.kt index ca773ac..b9e4fd7 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityAddPost.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityAddPost.kt @@ -12,6 +12,7 @@ import android.widget.* import androidx.appcompat.app.AppCompatActivity import androidx.core.app.ActivityCompat import androidx.core.content.ContextCompat +import androidx.core.view.isVisible import com.example.brzodolokacije.Models.Location import com.example.brzodolokacije.Models.LocationType import com.example.brzodolokacije.Models.PostPreview @@ -53,7 +54,7 @@ class ActivityAddPost : AppCompatActivity() { //paths= ArrayList() - uploadFromGallery=findViewById(R.id.btnActivityAddPostUploadFromGallery) as Button + uploadFromGallery=findViewById(R.id.btnActivityAddPostUploadFromGalleryVisible) as Button showNextImage=findViewById(R.id.nextImage) as Button showPreviousImage=findViewById(R.id.previousImage) as Button switcher=findViewById(R.id.isActivityAddPostSwitcher) as ImageSwitcher @@ -140,6 +141,7 @@ class ActivityAddPost : AppCompatActivity() { //veci broj slika if (data!!.getClipData() != null) { + var count = data!!.clipData!!.itemCount for (i in 0..count - 1) { @@ -149,6 +151,7 @@ class ActivityAddPost : AppCompatActivity() { // prikaz ucitanih switcher.setImageURI(uploadedImages!![0]) + uploadFromGallery.isVisible=false place=0 //jedna slika } else if (data?.getData() != null) { @@ -156,6 +159,7 @@ class ActivityAddPost : AppCompatActivity() { //prikaz jedne ucitane switcher.setImageURI(data.data!!) + uploadFromGallery.isVisible=false } } } diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityCapturePost.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityCapturePost.kt index 1eb9916..312dc77 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityCapturePost.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityCapturePost.kt @@ -22,6 +22,7 @@ import androidx.appcompat.app.AppCompatActivity import androidx.core.app.ActivityCompat import androidx.core.content.ContextCompat import androidx.core.content.FileProvider +import androidx.core.view.isVisible import com.example.brzodolokacije.R import java.io.File import java.text.SimpleDateFormat @@ -47,7 +48,7 @@ class ActivityCapturePost : AppCompatActivity() { description = findViewById(R.id.etActivityCapturePostDescription) as EditText post = findViewById(R.id.btnActivityCapturePostPost) as Button showImage = findViewById(R.id.ivActivityCapturePostImage) as ImageView - takePhoto = findViewById(R.id.btnActivityCapturePostCapture) as Button + takePhoto = findViewById(R.id.btnActivityCapturePostCaptureVisible) as Button //dodavanje sa kamere @@ -97,8 +98,8 @@ class ActivityCapturePost : AppCompatActivity() { takePhoto.setOnClickListener { val APP_TAG = "BrzoDoLokacije" - val takePictureIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE)/* - val timeStamp: String = SimpleDateFormat("yyyyMMdd_HHmmss").format(Date()) + val takePictureIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE) + /* val timeStamp: String = SimpleDateFormat("yyyyMMdd_HHmmss").format(Date()) //val storageDir: File? = getExternalFilesDir(Environment.DIRECTORY_PICTURES) //val photo= File(storageDir,"JPEG_${timeStamp}.jpg") @@ -113,8 +114,8 @@ class ActivityCapturePost : AppCompatActivity() { FileProvider.getUriForFile(this, "com.codepath.fileprovider", photoFile!!) intent.putExtra(MediaStore.EXTRA_OUTPUT, fileProvider) } - */ +*/ cameraActivityResultLauncher.launch(takePictureIntent) } @@ -130,6 +131,9 @@ class ActivityCapturePost : AppCompatActivity() { description.hint = "Unesite lokaciju" description.setHintTextColor(Color.RED) } + + + } } private val cameraActivityResultLauncher = @@ -138,6 +142,8 @@ class ActivityCapturePost : AppCompatActivity() { val bundle = result.data!!.extras val bitmap = bundle!!["data"] as Bitmap? showImage.setImageBitmap(bitmap) + takePhoto.isVisible=false + } } diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentProfile.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentProfile.kt index 243cab0..bad3598 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentProfile.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentProfile.kt @@ -7,6 +7,7 @@ import android.view.View import android.view.ViewGroup import android.widget.Button import android.widget.TextView +import android.widget.Toast import androidx.fragment.app.FragmentTransaction import com.example.brzodolokacije.R diff --git a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentUserPosts.kt b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentUserPosts.kt index 561de10..fb90be7 100644 --- a/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentUserPosts.kt +++ b/Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Fragments/FragmentUserPosts.kt @@ -1,60 +1,58 @@ package com.example.brzodolokacije.Fragments +import android.content.Intent import android.os.Bundle import androidx.fragment.app.Fragment import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.Button +import android.widget.ImageButton +import android.widget.TextView +import android.widget.Toast +import com.example.brzodolokacije.Activities.ActivityAddPost +import com.example.brzodolokacije.Activities.ActivityCapturePost +import com.example.brzodolokacije.Activities.ActivityForgottenPassword import com.example.brzodolokacije.R +import com.google.android.material.bottomsheet.BottomSheetDialog -// TODO: Rename parameter arguments, choose names that match -// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER -private const val ARG_PARAM1 = "param1" -private const val ARG_PARAM2 = "param2" - -/** - * A simple [Fragment] subclass. - * Use the [FragmentUserPosts.newInstance] factory method to - * create an instance of this fragment. - */ class FragmentUserPosts : Fragment() { - // TODO: Rename and change types of parameters - private var param1: String? = null - private var param2: String? = null - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - arguments?.let { - param1 = it.getString(ARG_PARAM1) - param2 = it.getString(ARG_PARAM2) - } - } - + private lateinit var addNewPost: TextView override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? ): View? { // Inflate the layout for this fragment - return inflater.inflate(R.layout.fragment_user_posts, container, false) - } + val view =inflater.inflate(R.layout.fragment_user_posts, container, false) +// Toast.makeText( +// activity, "****************USER*****************", Toast.LENGTH_LONG +// ).show(); + addNewPost=view.findViewById(R.id.tvFragmentUserPostsAddPost) as TextView + addNewPost.setOnClickListener { + var bottomSheetDialog2: BottomSheetDialog + bottomSheetDialog2= BottomSheetDialog(requireContext()) + bottomSheetDialog2.setContentView(R.layout.bottom_sheet_add_new_post) + bottomSheetDialog2.show() + + var close=bottomSheetDialog2.findViewById(R.id.btnBottomSheetAddNewPostClose) as ImageButton + var openAddPost=bottomSheetDialog2.findViewById(R.id.btnBottomSheetAddNewPostOpenAddPost) as ImageButton + var capturePost=bottomSheetDialog2.findViewById(R.id.btnBottomSheetAddNewPostOpenCapturePost) as ImageButton - companion object { - /** - * Use this factory method to create a new instance of - * this fragment using the provided parameters. - * - * @param param1 Parameter 1. - * @param param2 Parameter 2. - * @return A new instance of fragment FragmentUserPosts. - */ - // TODO: Rename and change types and number of parameters - @JvmStatic - fun newInstance(param1: String, param2: String) = - FragmentUserPosts().apply { - arguments = Bundle().apply { - putString(ARG_PARAM1, param1) - putString(ARG_PARAM2, param2) - } + openAddPost.setOnClickListener{ + val intent = Intent (getActivity(), ActivityAddPost::class.java) + getActivity()?.startActivity(intent) } + + capturePost.setOnClickListener{ + val intent = Intent (getActivity(), ActivityCapturePost::class.java) + getActivity()?.startActivity(intent) + } + close.setOnClickListener { + bottomSheetDialog2.dismiss() + } + } + + return view } + } \ No newline at end of file diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_add_a_photo_24.xml b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_add_a_photo_24.xml new file mode 100644 index 0000000..b7e751b --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_add_a_photo_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_add_photo_alternate_24.xml b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_add_photo_alternate_24.xml new file mode 100644 index 0000000..5f6b662 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_add_photo_alternate_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_post_add_24.xml b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_post_add_24.xml new file mode 100644 index 0000000..32f0448 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/res/drawable/ic_baseline_post_add_24.xml @@ -0,0 +1,9 @@ + + + + + + + diff --git a/Client/BrzoDoLokacije/app/src/main/res/layout/activity_add_post.xml b/Client/BrzoDoLokacije/app/src/main/res/layout/activity_add_post.xml index 5af0c1f..a7a6e06 100644 --- a/Client/BrzoDoLokacije/app/src/main/res/layout/activity_add_post.xml +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/activity_add_post.xml @@ -10,6 +10,7 @@ android:id="@+id/isActivityAddPostSwitcher" android:layout_width="0dp" android:layout_height="0dp" + android:elevation="10dp" app:layout_constraintBottom_toTopOf="@+id/btnActivityAddPostUploadFromGallery" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" @@ -45,60 +46,95 @@ tools:ignore="SpeakableTextPresentCheck" />