Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FIX] week calendar #38

Merged
merged 13 commits into from
Aug 11, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .idea/compiler.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion app/.gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
/build
/build
kakao_string.xml
4 changes: 4 additions & 0 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,10 @@ dependencies {
implementation 'com.google.dagger:hilt-android:2.47'
annotationProcessor 'com.google.dagger:hilt-compiler:2.47'

// viewmodel과 livedata
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.1"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.6.1"

// implementation "androidx.security:security-crypto:1.0.0"

}
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,12 @@ data class GetMyReviewResponse(
){
data class Data(
val content: String,
val grade: Int,
val reviewId : Int,
val mainGrade: Int,
val amountGrade: Int,
val tasteGrade : Int,
val imgUrlList: List<String>,
val tagList: List<String>,
val writeDate: String
val writeDate: String,
val menuName: String
)
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,9 @@ import android.os.Bundle
import android.text.style.ForegroundColorSpan
import android.text.style.RelativeSizeSpan
import android.text.style.StyleSpan
import android.util.Log
import android.view.Window
import androidx.appcompat.app.AppCompatActivity
import com.eatssu.android.databinding.ActivityCalendarBinding
import com.eatssu.android.ui.main.MainActivity
import com.prolificinteractive.materialcalendarview.*
import com.prolificinteractive.materialcalendarview.format.DateFormatTitleFormatter
import com.prolificinteractive.materialcalendarview.format.TitleFormatter
Expand All @@ -21,6 +19,7 @@ import java.util.*
class CalendarActivity : AppCompatActivity() {
private lateinit var binding: ActivityCalendarBinding
lateinit var calendar: MaterialCalendarView
private lateinit var viewModel: CalendarViewModel

val today = CalendarDay.today()

Expand Down
Original file line number Diff line number Diff line change
@@ -1,38 +1,55 @@
package com.eatssu.android.ui.calendar

import android.content.Intent
import android.os.Build
import android.os.Bundle
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.annotation.RequiresApi
import androidx.core.content.ContextCompat
import androidx.recyclerview.widget.RecyclerView
import com.eatssu.android.R
import com.eatssu.android.databinding.ItemCalendarListBinding
import com.eatssu.android.ui.main.MainActivity
import java.time.LocalDate
import java.time.format.DateTimeFormatter
import java.util.*


class CalendarAdapter(private val cList: List<CalendarData>) :
RecyclerView.Adapter<CalendarAdapter.CalendarViewHolder>() {
private var allViewHolders : List<CalendarViewHolder> = mutableListOf()
private var mListener: OnItemClickListener? = null

class CalendarViewHolder(private val binding: ItemCalendarListBinding) :
inner class CalendarViewHolder(val binding: ItemCalendarListBinding) :
RecyclerView.ViewHolder(binding.root) {

private var selectedDate: String? = null
lateinit var today : String
lateinit var day : String

@RequiresApi(Build.VERSION_CODES.O)
fun bind(item: CalendarData) {
binding.date.text = item.cl_date
binding.day.text = item.cl_day

var today = binding.date.text
var day = binding.day.text
today = binding.date.text as String
day = binding.day.text as String
Comment on lines +38 to +39
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

여기 as String을 붙여준 이유가 따로 있나요?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

그 변환 가능한 속성이라서 String으로 자동 변환이 안된다는 오류 있어서 강제 변환 해줬습니당


// 오늘 날짜
val now = LocalDate.now()
.format(DateTimeFormatter.ofPattern("dd").withLocale(Locale.forLanguageTag("ko")))
.format(
DateTimeFormatter.ofPattern("dd").withLocale(Locale.forLanguageTag("ko"))
)

// 오늘 날짜와 캘린더의 오늘 날짜가 같을 경우 background_blue 적용하기
if (today == now) {
if (now.equals(today)) {
binding.date.isSelected = true;
binding.day.isSelected = true;
binding.weekCardview.setBackgroundResource(R.drawable.selector_background_blue)
}
Log.i("now", now)
}
}

Expand All @@ -45,9 +62,31 @@ class CalendarAdapter(private val cList: List<CalendarData>) :
@RequiresApi(Build.VERSION_CODES.O)
override fun onBindViewHolder(holder: CalendarViewHolder, position: Int) {
holder.bind(cList[position])

allViewHolders = allViewHolders.plus(holder)

holder.itemView.setOnClickListener { v ->
val pos = holder.adapterPosition
if (pos != RecyclerView.NO_POSITION) {
mListener?.onItemClick(v, cList.get(position))
}
}

}

override fun getItemCount(): Int {
return cList.size
}

fun setOnItemClickListener(listener: OnItemClickListener?) {
mListener = listener
}

fun returnViewHolderList(): List<CalendarViewHolder> {
return allViewHolders
}
}

interface OnItemClickListener {
fun onItemClick(v: View?, data: CalendarData)
}
Original file line number Diff line number Diff line change
@@ -1,26 +1,30 @@
package com.eatssu.android.ui.calendar

import android.annotation.SuppressLint
import android.content.Intent
import android.content.Intent.getIntent
import android.os.Build
import android.os.Bundle
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
import android.widget.Toast
import androidx.annotation.RequiresApi
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.eatssu.android.R
import com.eatssu.android.databinding.FragmentCalendarBinding
import com.prolificinteractive.materialcalendarview.DayViewFacade
import java.time.DayOfWeek
import java.time.LocalDate
import java.time.LocalDateTime
import java.time.format.DateTimeFormatter
import java.time.format.TextStyle
import java.time.temporal.TemporalAdjusters
import java.util.*


class CalendarFragment : Fragment() {

private var _binding: FragmentCalendarBinding? = null
Expand Down Expand Up @@ -48,24 +52,25 @@ class CalendarFragment : Fragment() {

calendarAdapter = CalendarAdapter(calendarList)



calendarList.apply {
val dateFormat =
DateTimeFormatter.ofPattern("dd").withLocale(Locale.forLanguageTag("ko"))
val monthFormat = DateTimeFormatter.ofPattern("yyyy . MM . dd")
.withLocale(Locale.forLanguageTag("ko"))

val localDate = LocalDateTime.now().format(monthFormat)
binding.textYearMonth.text = localDate
val newDate = arguments?.getString("Date")

if (newDate != null) {
Log.d("Date", newDate)
}

var preSunday: LocalDateTime = LocalDateTime.now().with(
val preSunday: LocalDateTime = LocalDateTime.now().with(
TemporalAdjusters.previous(
DayOfWeek.SUNDAY
)
)

Log.d("preSunday", preSunday.toString())
for (i in 0..6) {
Log.d("날짜만", week_day[i])

Expand All @@ -79,35 +84,14 @@ class CalendarFragment : Fragment() {
}
Log.d("저번 주 일요일 기준으로 시작!", preSunday.plusDays(i.toLong()).format(dateFormat))
}
}
binding.weekRecycler.adapter = calendarAdapter
binding.weekRecycler.layoutManager = GridLayoutManager(context, 7)
binding.weekRecycler.adapter = calendarAdapter
binding.weekRecycler.layoutManager = GridLayoutManager(context, 7)

binding.textYearMonth.setOnClickListener {
val intent = Intent(context, CalendarActivity::class.java);
startActivity(intent);
}



}

override fun onResume() {
val intent = Intent()
//text 키값으로 데이터를 받는다. String을 받아야 하므로 getStringExtra()를 사용함
/*val selectdate = this.arguments?.getString("changedate")
Log.d("selectdate", selectdate.toString())*/
val intentdate = intent.getStringExtra("intentdate")
Log.d("intentdate", intentdate.toString())

binding.btnCalendarLeft.setOnClickListener {
binding.textYearMonth.text = null
binding.textYearMonth.text = intentdate
/*binding.btnCalendarRight.setOnClickListener{
binding.textYearMonth.text = null
binding.textYearMonth.text = LocalDateTime.now().plusDays(1).format(monthFormat).toString()
}*/
}
super.onResume()
Log.d("fragment", "onResumed")
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package com.eatssu.android.ui.calendar

import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel

class CalendarViewModel : ViewModel() {
private val data = MutableLiveData<String>()

fun setData(dataToSend: String) {
data.value = dataToSend
}

fun getData(): LiveData<String> {
return data
}
}
5 changes: 5 additions & 0 deletions app/src/main/java/com/eatssu/android/ui/calendar/MenuDate.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package com.eatssu.android.ui.calendar

class MenuDate(date: String){
var date: String = date // 날짜
}
Original file line number Diff line number Diff line change
Expand Up @@ -90,4 +90,8 @@ class InfoActivity_Dodam : AppCompatActivity() {

private fun getNonFixed() {
}

override fun finish() {
super.finish()
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -85,4 +85,8 @@ class InfoActivity_Food : AppCompatActivity() {

private fun getNonFixed() {
}

override fun finish() {
super.finish()
}
}
Original file line number Diff line number Diff line change
@@ -1,20 +1,15 @@
package com.eatssu.android.ui.infopage

import android.icu.text.IDNA.Info
import RetrofitImpl
import android.R
import android.os.Build
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import android.widget.Toast
import androidx.annotation.RequiresApi
import androidx.recyclerview.widget.RecyclerView
import androidx.appcompat.app.AppCompatActivity
import com.eatssu.android.data.enums.RestaurantType
import com.eatssu.android.data.model.request.ChangeNickname
import com.eatssu.android.data.model.response.GetMenuInfoListResponse
import com.eatssu.android.data.model.response.InfoResponse
import com.eatssu.android.data.service.InfoService
import com.eatssu.android.data.service.MenuService
import com.eatssu.android.data.service.UserService
import com.eatssu.android.databinding.ActivityInfoGisikBinding
import net.daum.mf.map.api.MapPOIItem
import net.daum.mf.map.api.MapPoint
Expand All @@ -24,7 +19,8 @@ import retrofit2.Callback
import retrofit2.Response
import retrofit2.Retrofit

class InfoActivity_Gisik : AppCompatActivity() {

class InfoActivity_Gisik : AppCompatActivity(){
private lateinit var viewBinding: ActivityInfoGisikBinding
lateinit var retrofit: Retrofit
private lateinit var infoService: InfoService
Expand All @@ -43,7 +39,6 @@ class InfoActivity_Gisik : AppCompatActivity() {

// 중심점 변경 - 레지던스홀
mapview.setMapCenterPoint(MapPoint.mapPointWithGeoCoord(37.495488,126.959173), true);
//mapview.zoomIn(true)

val marker = MapPOIItem()
marker.apply {
Expand Down Expand Up @@ -101,4 +96,10 @@ class InfoActivity_Gisik : AppCompatActivity() {

private fun getNonFixed() {
}

override fun finish() {
super.finish()
}


}
Original file line number Diff line number Diff line change
Expand Up @@ -84,4 +84,8 @@ class InfoActivity_Haksik : AppCompatActivity() {

private fun getNonFixed() {
}

override fun finish() {
super.finish()
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -85,4 +85,8 @@ class InfoActivity_Kitchen : AppCompatActivity() {

private fun getNonFixed() {
}

override fun finish() {
super.finish()
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -85,4 +85,8 @@ class InfoActivity_Snack : AppCompatActivity() {

private fun getNonFixed() {
}

override fun finish() {
super.finish()
}
}
Loading
Loading