diff --git a/app/src/main/java/com/example/noogabab/presentation/ui/main/album/AlbumAdapter.kt b/app/src/main/java/com/example/noogabab/presentation/ui/main/album/AlbumAdapter.kt index f4afd39..b790147 100644 --- a/app/src/main/java/com/example/noogabab/presentation/ui/main/album/AlbumAdapter.kt +++ b/app/src/main/java/com/example/noogabab/presentation/ui/main/album/AlbumAdapter.kt @@ -6,6 +6,7 @@ import android.view.View import android.view.ViewGroup import android.widget.BaseAdapter import android.widget.ImageView +import com.bumptech.glide.Glide import com.example.noogabab.R import com.example.noogabab.presentation.entity.PresenterAlbumImage @@ -20,9 +21,13 @@ class AlbumAdapter(private val items: ArrayList, private va if (current == null) { current = layoutInflater.inflate(R.layout.item_album, parent, false) } - var image = view?.findViewById(R.id.image_album) - image?.setImageResource(items[p].image!!) - + var imageView = view?.findViewById(R.id.image_album) + if (imageView != null) { + Glide.with(context).load(items[p].image) + .centerCrop() + .placeholder(R.drawable.ic_background_album) + .into(imageView) + } return current!! } diff --git a/app/src/main/java/com/example/noogabab/presentation/ui/main/album/AlbumFragment.kt b/app/src/main/java/com/example/noogabab/presentation/ui/main/album/AlbumFragment.kt index 5b41f9f..a53f8b5 100644 --- a/app/src/main/java/com/example/noogabab/presentation/ui/main/album/AlbumFragment.kt +++ b/app/src/main/java/com/example/noogabab/presentation/ui/main/album/AlbumFragment.kt @@ -5,28 +5,30 @@ import android.graphics.Color import android.os.Bundle import androidx.fragment.app.Fragment import android.view.View +import com.bumptech.glide.Glide import com.example.noogabab.R import com.example.noogabab.presentation.entity.PresenterAlbumImage import kotlinx.android.synthetic.main.fragment_album.* class AlbumFragment : Fragment(R.layout.fragment_album) { -// var items = ArrayList() -// var ids = arrayOf(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23) -// var images = intArrayOf( -// R.drawable.image1, R.drawable.image2, R.drawable.image3, R.drawable.image4, R.drawable.image5, -// R.drawable.image6, R.drawable.image7, R.drawable.image8, R.drawable.image9, R.drawable.image10, -// R.drawable.image11, R.drawable.image12, R.drawable.image13, R.drawable.image14, R.drawable.image15, -// R.drawable.image16, R.drawable.image17, R.drawable.image18, R.drawable.image19, R.drawable.image20, -// R.drawable.image21, R.drawable.image22, R.drawable.image23 -// ) + var items = ArrayList() + var ids = arrayOf(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23) + var images = intArrayOf( + R.drawable.image1, R.drawable.image2, R.drawable.image3, R.drawable.image4, R.drawable.image5, + R.drawable.image6, R.drawable.image7, R.drawable.image8, R.drawable.image9, R.drawable.image10, + R.drawable.image11, R.drawable.image12, R.drawable.image13, R.drawable.image14, R.drawable.image15, + R.drawable.image16, R.drawable.image17, R.drawable.image18, R.drawable.image19, R.drawable.image20, + R.drawable.image21, R.drawable.image22, R.drawable.image23 + ) override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) requireActivity().window.statusBarColor = Color.WHITE; -// for (i in ids.indices) items.add(PresenterAlbumImage(ids[i], images[i])) -// var adapter = AlbumAdapter(items, requireContext()) -// grid_album.adapter = adapter + + for (i in ids.indices) items.add(PresenterAlbumImage(ids[i], images[i])) + var adapter = AlbumAdapter(items, requireContext()) + grid_album.adapter = adapter // // grid_album.setOnItemClickListener { adapterView, view, i, l -> // var intent = Intent(activity, AlbumDetailActivity::class.java) diff --git a/app/src/main/java/com/example/noogabab/presentation/ui/start/StartActivity.kt b/app/src/main/java/com/example/noogabab/presentation/ui/start/StartActivity.kt index eaaf749..cd76557 100644 --- a/app/src/main/java/com/example/noogabab/presentation/ui/start/StartActivity.kt +++ b/app/src/main/java/com/example/noogabab/presentation/ui/start/StartActivity.kt @@ -6,7 +6,9 @@ import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.view.View import android.view.WindowManager +import android.widget.Toast import androidx.activity.viewModels +import androidx.core.app.ActivityCompat import androidx.lifecycle.Observer import com.example.noogabab.R import com.example.noogabab.presentation.ui.start.createGroup.CreateGroupActivity @@ -15,6 +17,7 @@ import com.example.noogabab.util.DynamicTextWatcher import dagger.hilt.android.AndroidEntryPoint import kotlinx.android.synthetic.main.activity_create_group.* import kotlinx.android.synthetic.main.activity_start.* +import kotlin.system.exitProcess @AndroidEntryPoint class StartActivity : AppCompatActivity(), View.OnClickListener { @@ -25,6 +28,17 @@ class StartActivity : AppCompatActivity(), View.OnClickListener { } ) + private var backPressedTime: Long = 0 + + override fun onBackPressed() { + if (System.currentTimeMillis() - backPressedTime < 2000) { + ActivityCompat.finishAffinity(this); + exitProcess(0) + } + Toast.makeText(this, "한 번 더 누르시면 앱이 종료됩니다.", Toast.LENGTH_SHORT).show() + backPressedTime = System.currentTimeMillis() + } + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_start) diff --git a/app/src/main/java/com/example/noogabab/presentation/ui/start/enterGroup/EnterGroupActivity.kt b/app/src/main/java/com/example/noogabab/presentation/ui/start/enterGroup/EnterGroupActivity.kt index 70eab06..788200d 100644 --- a/app/src/main/java/com/example/noogabab/presentation/ui/start/enterGroup/EnterGroupActivity.kt +++ b/app/src/main/java/com/example/noogabab/presentation/ui/start/enterGroup/EnterGroupActivity.kt @@ -31,4 +31,8 @@ class EnterGroupActivity : AppCompatActivity() { fun nextPage() { vp_create.setCurrentItem(1, true) } + + fun prevPage() { + vp_create.setCurrentItem(1, true) + } } \ No newline at end of file diff --git a/app/src/main/java/com/example/noogabab/presentation/ui/start/enterGroup/ReadOnlyDogFragment.kt b/app/src/main/java/com/example/noogabab/presentation/ui/start/enterGroup/ReadOnlyDogFragment.kt index e8096fe..f4634b5 100644 --- a/app/src/main/java/com/example/noogabab/presentation/ui/start/enterGroup/ReadOnlyDogFragment.kt +++ b/app/src/main/java/com/example/noogabab/presentation/ui/start/enterGroup/ReadOnlyDogFragment.kt @@ -1,11 +1,13 @@ package com.example.noogabab.presentation.ui.start.enterGroup +import android.content.Context import android.content.Intent import android.content.Intent.FLAG_ACTIVITY_CLEAR_TASK import android.os.Bundle import androidx.fragment.app.Fragment import android.view.View import android.widget.Toast +import androidx.activity.OnBackPressedCallback import androidx.activity.viewModels import androidx.core.app.ActivityCompat import androidx.fragment.app.activityViewModels @@ -19,6 +21,22 @@ import kotlinx.android.synthetic.main.fragment_craete_dog.* class ReadOnlyDogFragment : Fragment(R.layout.fragment_craete_dog), View.OnClickListener { private val viewModel: EnterGroupViewModel by activityViewModels() + private lateinit var callback: OnBackPressedCallback + + override fun onAttach(context: Context) { + super.onAttach(context) + callback = object : OnBackPressedCallback(true) { + override fun handleOnBackPressed() { + (activity as EnterGroupActivity).prevPage() + } + } + requireActivity().onBackPressedDispatcher.addCallback(this, callback) + } + + override fun onDetach() { + super.onDetach() + callback.remove() + } override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) diff --git a/app/src/main/res/layout/item_album.xml b/app/src/main/res/layout/item_album.xml index d4b00c7..b3bd04b 100644 --- a/app/src/main/res/layout/item_album.xml +++ b/app/src/main/res/layout/item_album.xml @@ -13,10 +13,9 @@