PolicyAdapter.kt
3.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
package com.example.vip
import android.content.Context
import android.content.Intent
import android.content.SharedPreferences
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.Toast
import androidx.recyclerview.widget.RecyclerView
import kotlinx.android.synthetic.main.item_policy.view.*
import kotlinx.android.synthetic.main.item_policyfield.view.*
class PolicyAdapter(private val items: ArrayList<PolicyItem>) :
RecyclerView.Adapter<PolicyAdapter.ViewHolder>() {
override fun getItemCount() = items.size
override fun onBindViewHolder(holder: PolicyAdapter.ViewHolder, position: Int) {
val item = items[position]
holder.apply {
bind(item)
itemView.tag = item
}
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int):
PolicyAdapter.ViewHolder {
val inflatedView = LayoutInflater.from(parent.context)
.inflate(R.layout.item_policy, parent, false)
return PolicyAdapter.ViewHolder(inflatedView)
}
class ViewHolder(v: View) : RecyclerView.ViewHolder(v) {
private var view: View = v
val prof: SharedPreferences = view.context.getSharedPreferences("profdata", Context.MODE_PRIVATE)
val editor: SharedPreferences.Editor=prof.edit()
var tempstring=prof.getString("favorstringlist","")
var sepstr=tempstring!!.split("@")
var sepstrset=sepstr.toMutableSet()
fun bind(item: PolicyItem) {
view.policyImage.setImageDrawable(item.policyItemImage)
view.policyDday.text = item.policyItemDday
view.policyHost.text = item.policyItemHost
view.policyTitle.text = item.policyItemTitle
view.policyScore.rating= item.policyItemScore
view.policyFavor.text=item.policyItemFavor
if(item.policyItemTitle in sepstrset){
view.policyFavor.isChecked=true
}
else{
}
view.setOnClickListener{
val intent=Intent(view.context, DetailActivity::class.java)
//putExtraStart
intent.putExtra("key",item.policyItemTitle)
//putExtraEnd
view.context.startActivity(intent)
}
view.policyFavor.setOnClickListener {
if (view.policyFavor.isChecked) {
tempstring = tempstring + view.policyTitle.text.toString() + "@"
editor.putString("favorstringlist", tempstring)
editor.commit()
Toast.makeText(
view.context,
"찜목록 추가 완료! : " + view.policyTitle.text.toString(),
Toast.LENGTH_SHORT
).show()
} else {
sepstrset.remove(view.policyTitle.text.toString())
editor.putString("favorstringlist", sepstrset.joinToString("@"))
editor.commit()
Toast.makeText(
view.context,
"찜목록 제거 완료! : " + view.policyTitle.text.toString(),
Toast.LENGTH_SHORT
).show()
}
}
}
}
}