Skip to content

Commit

Permalink
Merge pull request #153 from TeamDMU/feature/alarm-box-ui
Browse files Browse the repository at this point in the history
Design : ํ‚ค์›Œ๋“œ ์•Œ๋ฆผํ•จ ๋ฆฌ๋””์ž์ธ
  • Loading branch information
m6z1 authored Feb 21, 2024
2 parents bc8d673 + 4f5dce6 commit 1b4af7c
Show file tree
Hide file tree
Showing 14 changed files with 156 additions and 215 deletions.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,42 +1,39 @@
package com.dongyang.android.youdongknowme.ui.view.alarm

import android.content.Intent
import androidx.recyclerview.widget.LinearLayoutManager
import android.view.View
import com.dongyang.android.youdongknowme.R
import com.dongyang.android.youdongknowme.data.local.entity.AlarmEntity
import com.dongyang.android.youdongknowme.databinding.ActivityAlarmBinding
import com.dongyang.android.youdongknowme.standard.base.BaseActivity
import com.dongyang.android.youdongknowme.standard.util.mapDepartmentKoreanToCode
import com.dongyang.android.youdongknowme.ui.adapter.AlarmAdapter
import com.dongyang.android.youdongknowme.ui.view.detail.DetailActivity
import org.koin.androidx.viewmodel.ext.android.viewModel

class AlarmActivity : BaseActivity<ActivityAlarmBinding, AlarmViewModel>(), AlarmClickListener {
override val layoutResourceId: Int = R.layout.activity_alarm
override val viewModel: AlarmViewModel by viewModel()

private lateinit var adapter : AlarmAdapter

override fun initStartView() {
adapter = AlarmAdapter().apply { setItemClickListener(this@AlarmActivity) }
binding.vm = viewModel
binding.alarmRcv.apply {
this.adapter = this@AlarmActivity.adapter
this.layoutManager = LinearLayoutManager(this@AlarmActivity)
this.setHasFixedSize(true)
}
setupToolbar()
}

override fun initDataBinding() {
viewModel.alarmList.observe(this) {
adapter.submitList(it)
private fun setupToolbar() {
binding.alarmToolbar.apply {
tvToolbarTitle.text = getString(R.string.alarm_title)
btnToolbarExit.visibility = View.VISIBLE
tvToolbarActionButton.text = getString(R.string.alarm_action_button_text)
tvToolbarActionButton.visibility = View.VISIBLE
}
}

override fun initDataBinding() = Unit

override fun initAfterBinding() {
viewModel.getAlarms()

binding.alarmToolbar.toolbarExit.setOnClickListener {
binding.alarmToolbar.btnToolbarExit.setOnClickListener {
finish()
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,9 @@ package com.dongyang.android.youdongknowme.ui.view.depart
import android.content.Intent
import android.graphics.Typeface
import android.os.Bundle
import android.text.Spannable
import android.text.SpannableStringBuilder
import android.text.style.ForegroundColorSpan
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
import androidx.core.text.set
import androidx.core.view.updateLayoutParams
import androidx.recyclerview.widget.LinearLayoutManager
import com.dongyang.android.youdongknowme.R
Expand Down Expand Up @@ -40,8 +35,8 @@ class DepartActivity : AppCompatActivity(), DepartClickListener {
viewModel.checkFirstLaunch()

// ๋ถ€๋ถ„ ์ƒ‰์ƒ ์ง€์ •
setSpanText(baseContext, binding.tvDepartTitleMain,startIdx = 0, endIdx = 5)
setSpanText(baseContext, binding.tvDepartTitleMain, startIdx = 0, endIdx = 5)

// ํ•™๊ณผ ๋ฆฌ์ŠคํŠธ
val items =
resources.getStringArray(R.array.dmu_department_list).toCollection(ArrayList<String>())
Expand Down Expand Up @@ -75,10 +70,14 @@ class DepartActivity : AppCompatActivity(), DepartClickListener {
// ํ™•์ธ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๋‚ด๋ถ€ DB์— ํ•™๊ณผ๋ฅผ ๋‹ด๊ณ  ๋ฉ”์ธ ์•กํ‹ฐ๋น„ํ‹ฐ๋กœ ์ด๋™
private fun getSnackBar(items: ArrayList<String>): Snackbar {
val snackbar =
Snackbar.make(binding.coordinatorDepart, getString(R.string.department_snackbar_title), LENGTH_LONG)
Snackbar.make(
binding.coordinatorDepart,
getString(R.string.department_snackbar_title),
LENGTH_LONG
)
.setAction(getString(R.string.department_snackbar_positive_button)) {
viewModel.setDepartment(items[viewModel.selectDepartPosition.value ?: 0])
if(viewModel.isFirstLaunch.value == true) {
if (viewModel.isFirstLaunch.value == true) {
val intent = Intent(this, KeywordActivity::class.java)
startActivity(intent)
finish()
Expand Down Expand Up @@ -108,7 +107,8 @@ class DepartActivity : AppCompatActivity(), DepartClickListener {


val snackBarView = snackbar.view
val snackBarText = snackBarView.findViewById<TextView>(com.google.android.material.R.id.snackbar_text)
val snackBarText =
snackBarView.findViewById<TextView>(com.google.android.material.R.id.snackbar_text)
snackBarText.typeface = Typeface.createFromAsset(this.assets, "pretendard_regular.otf")

snackbar.animationMode = BaseTransientBottomBar.ANIMATION_MODE_SLIDE
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ import android.provider.Settings
import android.widget.Toast
import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat
import androidx.recyclerview.widget.LinearLayoutManager
import com.dongyang.android.youdongknowme.R
import com.dongyang.android.youdongknowme.databinding.ActivityDetailBinding
import com.dongyang.android.youdongknowme.standard.base.BaseActivity
Expand Down Expand Up @@ -50,7 +49,7 @@ class DetailActivity : BaseActivity<ActivityDetailBinding, DetailViewModel>(), D
}

override fun initDataBinding() {
binding.vm = viewModel
binding.viewModel = viewModel

viewModel.isLoading.observe(this) {
if (it) showLoading()
Expand All @@ -76,7 +75,7 @@ class DetailActivity : BaseActivity<ActivityDetailBinding, DetailViewModel>(), D
viewModel.fetchNoticeDetail()

// ๋’ค๋กœ๊ฐ€๊ธฐ ๋ฒ„ํŠผ ํด๋ฆญ ์‹œ
binding.detailToolbar.toolbarExit.setOnClickListener {
binding.detailToolbar.btnToolbarExit.setOnClickListener {
finish()
}

Expand All @@ -99,7 +98,10 @@ class DetailActivity : BaseActivity<ActivityDetailBinding, DetailViewModel>(), D
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
when {
// ์‚ฌ์šฉ์ž๊ฐ€ ๊ถŒํ•œ ๋ถ€์—ฌ๋ฅผ ์™„๋ฃŒํ•œ ๊ฒฝ์šฐ
ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED
ContextCompat.checkSelfPermission(
this,
Manifest.permission.WRITE_EXTERNAL_STORAGE
) == PackageManager.PERMISSION_GRANTED
-> {
setDownloadManager(fileName, fileUri)
}
Expand All @@ -111,7 +113,11 @@ class DetailActivity : BaseActivity<ActivityDetailBinding, DetailViewModel>(), D
// ์‚ฌ์šฉ์ž์—๊ฒŒ ์ตœ์ดˆ๋กœ ๊ถŒํ•œ์„ ์š”์ฒญํ•˜๋Š” ๊ฒฝ์šฐ
else
-> {
ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.WRITE_EXTERNAL_STORAGE), 100)
ActivityCompat.requestPermissions(
this,
arrayOf(Manifest.permission.WRITE_EXTERNAL_STORAGE),
100
)
}
}
}
Expand Down Expand Up @@ -156,14 +162,15 @@ class DetailActivity : BaseActivity<ActivityDetailBinding, DetailViewModel>(), D
if (cursor.moveToFirst()) {
val columnIndex = cursor.getColumnIndex(DownloadManager.COLUMN_STATUS)
val status = cursor.getInt(columnIndex)
when(status) {
when (status) {
DownloadManager.STATUS_FAILED -> {
Toast.makeText(
context,
getString(R.string.detail_download_fail),
Toast.LENGTH_SHORT
).show()
}

DownloadManager.STATUS_SUCCESSFUL -> {
Toast.makeText(
context,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ class LicenseActivity : BaseActivity<ActivityLicenseBinding, LicenseViewModel>()
override fun initAfterBinding() {
adapter.submitList(OpenSourceEntity.openSourceList)

binding.licenseToolbar.toolbarExit.setOnClickListener { finish() }
binding.licenseToolbar.btnToolbarExit.setOnClickListener { finish() }
}

override fun itemClick(openSourceEntity: OpenSourceEntity) {
Expand Down
10 changes: 0 additions & 10 deletions app/src/main/res/drawable-xxxhdpi/ic_arrow_right.xml

This file was deleted.

7 changes: 7 additions & 0 deletions app/src/main/res/drawable/bg_stroke_gray300_radius_10dp.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="10dp" />
<stroke
android:width="1dp"
android:color="@color/gray300" />
</shape>
10 changes: 10 additions & 0 deletions app/src/main/res/drawable/ic_arrow_right.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:pathData="M7.529,19.392C7.318,19.181 7.2,18.895 7.2,18.597C7.2,18.299 7.318,18.013 7.529,17.802L13.484,11.847L7.529,5.892C7.33,5.679 7.222,5.397 7.227,5.105C7.232,4.814 7.35,4.536 7.557,4.33C7.763,4.123 8.041,4.005 8.332,4C8.624,3.995 8.906,4.103 9.119,4.302L15.869,11.052C16.08,11.263 16.198,11.549 16.198,11.847C16.198,12.145 16.08,12.431 15.869,12.642L9.119,19.392C8.908,19.603 8.622,19.721 8.324,19.721C8.026,19.721 7.74,19.603 7.529,19.392Z"
android:fillColor="#7F8295"
android:fillType="evenOdd"/>
</vector>
12 changes: 6 additions & 6 deletions app/src/main/res/drawable/ic_back.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="12dp"
android:height="20dp"
android:viewportWidth="12"
android:viewportHeight="20">
android:width="32dp"
android:height="32dp"
android:viewportWidth="32"
android:viewportHeight="32">
<path
android:pathData="M10.836,0.411C11.1,0.675 11.248,1.032 11.248,1.405C11.248,1.778 11.1,2.135 10.836,2.399L3.393,9.843L10.836,17.286C10.974,17.415 11.085,17.57 11.162,17.743C11.239,17.915 11.28,18.101 11.284,18.29C11.287,18.479 11.252,18.667 11.182,18.842C11.111,19.017 11.005,19.176 10.872,19.309C10.738,19.443 10.579,19.548 10.404,19.619C10.229,19.69 10.042,19.725 9.853,19.721C9.664,19.718 9.478,19.677 9.305,19.6C9.133,19.523 8.977,19.412 8.849,19.274L0.411,10.836C0.148,10.573 0,10.215 0,9.843C0,9.47 0.148,9.112 0.411,8.849L8.849,0.411C9.112,0.148 9.47,0 9.843,0C10.215,0 10.573,0.148 10.836,0.411Z"
android:fillColor="#4967E2"
android:pathData="M19.836,5.411C20.1,5.675 20.247,6.032 20.247,6.405C20.247,6.778 20.1,7.135 19.836,7.399L12.392,14.842L19.836,22.286C19.974,22.415 20.085,22.57 20.162,22.743C20.239,22.915 20.28,23.101 20.284,23.29C20.287,23.479 20.252,23.667 20.181,23.842C20.111,24.017 20.006,24.176 19.872,24.309C19.738,24.443 19.579,24.548 19.404,24.619C19.229,24.69 19.042,24.725 18.853,24.721C18.664,24.718 18.478,24.677 18.305,24.6C18.133,24.523 17.978,24.412 17.849,24.274L9.411,15.836C9.148,15.573 9,15.215 9,14.842C9,14.47 9.148,14.112 9.411,13.849L17.849,5.411C18.112,5.148 18.47,5 18.843,5C19.215,5 19.573,5.148 19.836,5.411Z"
android:fillColor="#50525F"
android:fillType="evenOdd"/>
</vector>
9 changes: 4 additions & 5 deletions app/src/main/res/layout/activity_alarm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,14 @@
android:id="@+id/alarm_toolbar"
layout="@layout/standard_toolbar"
android:layout_width="match_parent"
android:layout_height="?android:attr/actionBarSize"
app:exitVisible="@{true}"
app:title="@{@string/alarm_title}" />
android:layout_height="?android:attr/actionBarSize" />

<androidx.recyclerview.widget.RecyclerView
android:id="@+id/alarm_rcv"
android:id="@+id/rv_alarm"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="16dp"
android:layout_marginHorizontal="20dp"
android:layout_marginTop="8dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@id/alarm_toolbar"
tools:listitem="@layout/item_alarm" />
Expand Down
16 changes: 8 additions & 8 deletions app/src/main/res/layout/activity_detail.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@
app:title="@{@string/detail_title}" />

<androidx.constraintlayout.widget.ConstraintLayout
bind_is_error="@{vm.title == null}"
bind_is_loading="@{vm.isLoading()}"
bind_is_error="@{viewModel.title == null}"
bind_is_loading="@{viewModel.isLoading()}"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginTop="68dp"
Expand Down Expand Up @@ -62,7 +62,7 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:text="@{vm.title}"
android:text="@{viewModel.title}"
android:textColor="@color/gray600"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
Expand All @@ -75,7 +75,7 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="@{vm.date}"
android:text="@{viewModel.date}"
android:textColor="@color/gray400"
app:layout_constrainedWidth="true"
app:layout_constraintEnd_toStartOf="@id/detail_writer_date_divide"
Expand Down Expand Up @@ -104,7 +104,7 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:text="@{vm.writer}"
android:text="@{viewModel.writer}"
android:textColor="@color/gray400"
app:layout_constrainedWidth="true"
app:layout_constraintEnd_toEndOf="parent"
Expand Down Expand Up @@ -172,8 +172,8 @@
</androidx.constraintlayout.widget.ConstraintLayout>

<LinearLayout
bind_is_error="@{!vm.isError}"
bind_is_loading="@{vm.isLoading()}"
bind_is_error="@{!viewModel.isError}"
bind_is_loading="@{viewModel.isLoading()}"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
Expand All @@ -193,7 +193,7 @@
<data>

<variable
name="vm"
name="viewModel"
type="com.dongyang.android.youdongknowme.ui.view.detail.DetailViewModel" />
</data>
</layout>
Loading

0 comments on commit 1b4af7c

Please sign in to comment.