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
6 changes: 5 additions & 1 deletion app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,13 @@
<activity
android:name=".presentation.ui.article.ArticleActivity"
android:exported="true">
</activity>


<activity
android:name=".presentation.ui.jobGroup.JobGroupActivity"
android:exported="true">
</activity>

</application>


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ 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.domain.model.JobGroup
Expand All @@ -27,49 +29,41 @@ class JobGroupAdapter(var context: Context, private val jobgroups: List<JobGroup

override fun getView(position: Int, convertView: View?, parent: ViewGroup?): View {
var view: View = LayoutInflater.from(context).inflate(R.layout.item_job_group, null)
var btn: Button = view.findViewById(R.id.btn_job_group)
//var surroundView: View = LayoutInflater.from(context).inflate(R.layout.activity_job_group, null)
//var completeBtn: Button = surroundView.findViewById(R.id.btn_complete)
var ivBtn: ImageView = view.findViewById(R.id.iv_job_group_btn)
var tvBtn: TextView = view.findViewById(R.id.tv_job_group_btn)

fun setItem(jobgroup: String) {
btn.text= jobgroup
tvBtn.text= jobgroup
}
setItem(jobgroups[position].jobgroup)

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

btn.setOnClickListener{
// 이미 선택했던 직군 선택시 버튼 변경
if (selectedjobList.contains(btn.text)) {
btn.setBackgroundResource(R.drawable.ic_job_button)
btn.setTextColor(ContextCompat.getColor(context, R.color.black))
selectedjobList.remove(btn.text)
Log.d("JobGroupAdapter", "removed ${btn.text} from selectedjobList")
fun resetItem(){
// 이미 선택했던 직군 선택시 버튼 변경
if (selectedjobList.contains(tvBtn.text)) {
ivBtn.setBackgroundResource(R.drawable.ic_job_button)
tvBtn.setTextColor(ContextCompat.getColor(context, R.color.black))
selectedjobList.remove(tvBtn.text)
Log.d("JobGroupAdapter", "removed ${tvBtn.text} from selectedjobList")
}
// 최대 선택 가능한 직군 개수(=3) 제한
else if(selectedjobList.size==3) {
// 아무일도 일어나지 않음^___^

}
// 새롭게 직군 선택시 버튼 변경
else {
btn.setBackgroundResource(R.drawable.ic_job_button_clicked)
btn.setTextColor(ContextCompat.getColor(context, R.color.sub_bage))
selectedjobList.add(btn.text.toString())
Log.d("JobGroupAdapter", "added ${btn.text} from selectedjobList")
ivBtn.setBackgroundResource(R.drawable.ic_job_button_clicked)
tvBtn.setTextColor(ContextCompat.getColor(context, R.color.sub_bage))
selectedjobList.add(tvBtn.text.toString())
Log.d("JobGroupAdapter", "added ${tvBtn.text} from selectedjobList")
Log.d("JobGroupAdapter", "selectedjobList크기 : ${selectedjobList.size} ")
}
}

tvBtn.setOnClickListener{
resetItem()
}
ivBtn.setOnClickListener{
resetItem()
}

return view
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,27 +26,47 @@ class JobGroupActivity : AppCompatActivity() {

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

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

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

//gridview의 item click 감지
gridView.onItemClickListener =
AdapterView.OnItemClickListener { parent, view, position, id ->
Log.e("JobGroupActivity", "onItemCli ckListener is working")
var jobgroupItem: JobGroup = jobgroups.get(position)
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("JobGroupActivity", "$selectedData")*/

}

GoToProfile()
clickcompletebutton()
//activateCompleteBtn()

}

private fun GoToProfile() {
Expand Down Expand Up @@ -76,19 +96,17 @@ 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}이므로 버튼 활성화 ")

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

}
else{
completeBtn.setBackgroundResource(R.drawable.ic_job_complete)
completeBtn.isEnabled= false
}

}
else{
completeBtn.setBackgroundResource(R.drawable.ic_job_complete)
completeBtn.isEnabled= false
}
}


Expand Down
3 changes: 1 addition & 2 deletions app/src/main/res/drawable/ic_job_button.xml
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid
android:color="@color/gray_1"
android:textColor="@color/black"/>
android:color="@color/gray_1" />
<corners android:radius="100dp" />
<stroke
android:width="0dp"
Expand Down
3 changes: 1 addition & 2 deletions app/src/main/res/drawable/ic_job_button_clicked.xml
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid
android:color="@color/main_pink"
android:textColor="@color/white"/>
android:color="@color/main_pink"/>
<corners android:radius="100dp" />
<stroke
android:width="0dp"
Expand Down
5 changes: 3 additions & 2 deletions app/src/main/res/layout/activity_job_group.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".presentation.ui.jobGroup.JobGroupActivity">
tools:context=".presentation.ui.jobGroup.JobGroupActivity"
android:descendantFocusability="blocksDescendants" >

<androidx.appcompat.widget.Toolbar
android:id="@+id/tb_job_change"
Expand Down Expand Up @@ -109,7 +110,7 @@
android:horizontalSpacing="10dp"
android:verticalSpacing="11dp"
android:numColumns="2"

android:clickable="true"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/cl_job_comment"
Expand Down
59 changes: 42 additions & 17 deletions app/src/main/res/layout/item_job_group.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,48 @@
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto">
xmlns:app="http://schemas.android.com/apk/res-auto"
android:focusable="false"
android:focusableInTouchMode="false" >

<android.widget.Button
android:id="@+id/btn_job_group"
android:layout_width="166dp"
android:layout_height="42dp"
android:background="@drawable/ic_job_button"
android:gravity="center"
android:text=""
android:textColor="@color/black"
android:textSize="17sp"
android:focusable="false"
android:focusableInTouchMode="false"
android:outlineProvider="none"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent" >

<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:focusable="false"
android:focusableInTouchMode="false" >

<ImageView
android:id="@+id/iv_job_group_btn"
android:layout_width="166dp"
android:layout_height="42dp"
android:background="@drawable/ic_job_button"
android:outlineProvider="none"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:focusable="false"
android:focusableInTouchMode="false"/>
<TextView
android:id="@+id/tv_job_group_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="철강"
android:textColor="@color/black"
android:textSize="17sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:focusable="false"
android:focusableInTouchMode="false" />

</androidx.constraintlayout.widget.ConstraintLayout>

</FrameLayout>

</androidx.constraintlayout.widget.ConstraintLayout>