From 3d751f1026a059820c1830164875aa252109d4a8 Mon Sep 17 00:00:00 2001 From: TAMARA JERINIC Date: Sat, 5 Nov 2022 23:41:08 +0100 Subject: Dodato učitavanje iz galerije. Dodata provera permisija. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/src/main/AndroidManifest.xml | 7 +- .../brzodolokacije/Activities/ActivityAddPost.kt | 83 ++++++++++++++++++++++ .../app/src/main/res/layout/activity_add_post.xml | 39 ++++++++++ 3 files changed, 127 insertions(+), 2 deletions(-) create mode 100644 Client/BrzoDoLokacije/app/src/main/java/com/example/brzodolokacije/Activities/ActivityAddPost.kt create mode 100644 Client/BrzoDoLokacije/app/src/main/res/layout/activity_add_post.xml diff --git a/Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml b/Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml index 870fa98..00ee960 100644 --- a/Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml +++ b/Client/BrzoDoLokacije/app/src/main/AndroidManifest.xml @@ -3,7 +3,10 @@ xmlns:tools="http://schemas.android.com/tools"> - + + + + + + var paths = mutableListOf() + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_add_post) + + uploadFromGallery=findViewById(R.id.btnActivityAddPostUploadImages) as Button + takePhoto=findViewById(R.id.btnActivityAddPosTakeImage) as Button + image=findViewById(R.id.image) as ImageView + + //dodavanje iz galerije + uploadFromGallery.setOnClickListener{ + + //provera da li je odobrena upotreba galerije + if(ContextCompat.checkSelfPermission(this@ActivityAddPost, Manifest.permission.READ_EXTERNAL_STORAGE)!=PackageManager.PERMISSION_GRANTED){ + ActivityCompat.requestPermissions(this@ActivityAddPost, arrayOf(Manifest.permission.READ_EXTERNAL_STORAGE),101) + } + + //otvaranje galerije + val intent= Intent(Intent.ACTION_PICK) + intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true) + intent.action = Intent.ACTION_GET_CONTENT + intent.type="image/*" + startActivityForResult(Intent.createChooser(intent,"Izaberi fotografije"),100) + } + + //fotografisanje + takePhoto.setOnClickListener { + //provera da li je odobrena upotreba kamere + if(ContextCompat.checkSelfPermission(this@ActivityAddPost, Manifest.permission.CAMERA)!=PackageManager.PERMISSION_GRANTED){ + ActivityCompat.requestPermissions(this@ActivityAddPost, arrayOf(Manifest.permission.CAMERA),200) + } + } + + } + + override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { + super.onActivityResult(requestCode, resultCode, data) + //nakon otvaranja + if(requestCode==100 && resultCode== RESULT_OK){ + //samo jedna slika + //image.setImageURI(data?.data) + + //veci broj slika + if (data!!.getClipData() != null) { + var count = data!!.clipData!!.itemCount + + for (i in 0..count - 1) { + var _uri: Uri = data!!.clipData!!.getItemAt(i).uri + uploadedImages!!.add(_uri) + } + //jedna slika + } else if (data?.getData() != null) { + uploadedImages.add(data.data!!) + } + } + } + } +} \ No newline at end of file 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 new file mode 100644 index 0000000..da38262 --- /dev/null +++ b/Client/BrzoDoLokacije/app/src/main/res/layout/activity_add_post.xml @@ -0,0 +1,39 @@ + + + + + +