Skip to content
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
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,21 @@ import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.BaseAdapter
import android.widget.Button
import android.widget.ImageView
import android.widget.TextView
import androidx.core.content.ContextCompat
import com.example.cherry_pick_android.R
import com.example.cherry_pick_android.databinding.ActivityJobGroupBinding
import com.example.cherry_pick_android.domain.model.JobGroup
import dagger.hilt.android.AndroidEntryPoint


class JobGroupAdapter(var context: Context, private val jobgroups: List<JobGroup>) : BaseAdapter() {
class JobGroupAdapter(
var context: Context,
private val jobgroups: List<JobGroup>,
private val onCompleteBtnCallback: ()->Unit
) : BaseAdapter() {
private var selectedjobList =arrayListOf<String>()

override fun getCount(): Int = jobgroups.size

override fun getItem(position: Int): Any {
Expand Down Expand Up @@ -57,6 +61,9 @@ class JobGroupAdapter(var context: Context, private val jobgroups: List<JobGroup
Log.d("JobGroupAdapter", "added ${tvBtn.text} from selectedjobList")
Log.d("JobGroupAdapter", "selectedjobList크기 : ${selectedjobList.size} ")
}
/* 변경사항 */
onCompleteBtnCallback.invoke()

}

tvBtn.setOnClickListener{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import android.widget.Button
import android.widget.GridView
import android.widget.ImageButton
import com.example.cherry_pick_android.R
import com.example.cherry_pick_android.databinding.ActivityJobGroupBinding
import com.example.cherry_pick_android.domain.model.JobGroup
import com.example.cherry_pick_android.presentation.adapter.JobGroupAdapter
import com.example.cherry_pick_android.presentation.ui.jobGroup.JobGroups.jobgroups
Expand All @@ -19,72 +20,48 @@ class JobGroupActivity : AppCompatActivity() {
private lateinit var adapter: JobGroupAdapter
private lateinit var gridView: GridView
private lateinit var arrayList: ArrayList<String>
private val binding: ActivityJobGroupBinding by lazy {
ActivityJobGroupBinding.inflate(layoutInflater)
}
companion object{
const val TAG = "JobGroupActivity"
}

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_job_group)
setContentView(binding.root)

gridView = findViewById(R.id.gv_job_group)
gridView = binding.gvJobGroup
arrayList = ArrayList()
var selectedData: ArrayList<String>

adapter = JobGroupAdapter(applicationContext, jobgroups!!)
//adapter = JobGroupAdapter(this, jobgroups)
adapter = JobGroupAdapter(applicationContext, jobgroups, onCompleteButtonStateChanged)
gridView?.adapter = adapter

selectedData = adapter.getSelectedList()
Log.d("JobGroupActivity", "$selectedData")

//gridview의 item click 감지
gridView.onItemClickListener =
AdapterView.OnItemClickListener { parent, view, position, id ->
val completeBtn : Button = findViewById(R.id.btn_complete)
selectedData = adapter.getSelectedList()

// 직군 1개이상 선택시 완료 버튼 활성화
if (selectedData.size > 0) {
completeBtn.setBackgroundResource(R.drawable.ic_job_complete_clicked)
completeBtn.isEnabled= true
Log.d("JobGroupActivity", "arrayList크기 : ${arrayList.size}이므로 버튼 활성화 ")
Log.d("JobGroupActivity", "arrayList크기 : ${selectedData.size}이므로 버튼 활성화 ")
}
else{
completeBtn.setBackgroundResource(R.drawable.ic_job_complete)
completeBtn.isEnabled= false
}

//activateCompleteBtn()
Log.d("JobGroupActivity", "onItemClickListener is working")
/*var jobgroupItem: JobGroup = jobgroups[position]
arrayList.add(jobgroupItem.toString())
Log.d("JobGroupActivity", "arrayList : $arrayList ")

var selectedData = adapter.getSelectedList()
Log.d("JobGroupActivity", "$selectedData")*/

}
Log.d(TAG, "$selectedData")

GoToProfile()
clickcompletebutton()

}

private fun GoToProfile() {
val backbtn : ImageButton = findViewById(R.id.ibtn_job_change_back)
val backbtn : ImageButton = binding.ibtnJobChangeBack
backbtn.setOnClickListener{
var selectedData = adapter.getSelectedList()
Log.d("JobGroupActivity","$selectedData")
Log.d(TAG,"$selectedData")

finish()
}
}

// 프로필페이지로 이동 = 완료버튼 클릭
private fun clickcompletebutton() {
val completeBtn : Button = findViewById(R.id.btn_complete)
val completeBtn : Button = binding.btnJobComplete
completeBtn.setOnClickListener{
var selectedData = adapter.getSelectedList()
Log.d("JobGroupActivity","$selectedData")
Log.d(TAG,"$selectedData")

val intent = Intent(this, ProfileActivity::class.java).apply{
putStringArrayListExtra("selectedJobList",selectedData)
Expand All @@ -94,20 +71,21 @@ class JobGroupActivity : AppCompatActivity() {
}
}

private fun activateCompleteBtn() {
val completeBtn : Button = findViewById(R.id.btn_complete)
// 직군 1개이상 선택시 완료 버튼 활성화
if (arrayList.size > 0) {
completeBtn.setBackgroundResource(R.drawable.ic_job_complete_clicked)
completeBtn.isEnabled= true
Log.d("JobGroupActivity", "arrayList크기 : ${arrayList.size}이므로 버튼 활성화 ")
/* 주요 변경 사항 (밑에 2문단 코드) */
private val onCompleteButtonStateChanged: () -> Unit = {
updateCompleteButtonState() // 완료 버튼 상태 갱신
}
private fun updateCompleteButtonState() {
val completeBtn: Button = binding.btnJobComplete
val selectedJobList = adapter.getSelectedList()

}
else{
if (selectedJobList.size > 0) {
completeBtn.setBackgroundResource(R.drawable.ic_job_complete_clicked)
completeBtn.isEnabled = true
} else {
completeBtn.setBackgroundResource(R.drawable.ic_job_complete)
completeBtn.isEnabled= false
completeBtn.isEnabled = false
}
}


}
2 changes: 1 addition & 1 deletion app/src/main/res/layout/activity_job_group.xml
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@
app:layout_constraintTop_toBottomOf="@id/gv_job_group">

<android.widget.Button
android:id="@+id/btn_complete"
android:id="@+id/btn_job_complete"
android:layout_width="350dp"
android:layout_height="48dp"
android:text="@string/job_change_complete"
Expand Down