package com.dollearn.student.ui.home
|
|
import androidx.core.os.bundleOf
|
import androidx.recyclerview.widget.GridLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
import cn.sinata.xldutils.utils.showAllowingStateLoss
|
import com.dollearn.student.R
|
import com.dollearn.student.dialog.TipDialog
|
import com.dollearn.student.network.HttpManager
|
import com.dollearn.student.network.entity.Week
|
import com.dollearn.student.network.request
|
import com.dollearn.student.ui.TransparentStatusBarActivity
|
import com.dollearn.student.ui.home.adapter.WeekAdapter
|
import kotlinx.android.synthetic.main.activity_week_select.*
|
import org.jetbrains.anko.startActivity
|
|
class WeekSelectActivity:TransparentStatusBarActivity() {
|
override fun setContentView() = R.layout.activity_week_select
|
|
private val seasons = arrayListOf("第一季","第二季","第三季","第四季")
|
private val seasonAdapter = SeasonAdapter(seasons)
|
|
private val weeks = arrayListOf<Week>()
|
private val weekAdapter = WeekAdapter(weeks)
|
|
override fun initClick() {
|
seasonAdapter.setOnItemClickListener { view, position ->
|
seasonAdapter.checked = position
|
seasonAdapter.notifyDataSetChanged()
|
getWeeks()
|
}
|
|
weekAdapter.setOnItemClickListener { view, position ->
|
if (weeks[position].canStudy)
|
startActivity<ScheduleActivity>("week" to weeks[position].week,"season" to seasonAdapter.checked+1)
|
else{
|
val msg = if (seasonAdapter.checked == 0||weeks[0].canStudy) "请先完成上一周目学习后再试" else "请先完成上一季度学习后再试"
|
val tipDialog = TipDialog()
|
tipDialog.arguments = bundleOf("msg" to msg,"isAlert" to true)
|
tipDialog.showAllowingStateLoss(supportFragmentManager,"noStart")
|
}
|
}
|
}
|
|
override fun initView() {
|
rv_season.layoutManager = LinearLayoutManager(this)
|
rv_season.adapter = seasonAdapter
|
rv_week.layoutManager = GridLayoutManager(this,3)
|
rv_week.adapter = weekAdapter
|
}
|
|
private fun getWeeks(){
|
showDialog()
|
HttpManager.weekList(seasonAdapter.checked+1).request(this){_,data->
|
weeks.clear()
|
weeks.addAll(data?: arrayListOf())
|
weekAdapter.notifyDataSetChanged()
|
}
|
}
|
|
override fun onResume() {
|
super.onResume()
|
getWeeks()
|
}
|
}
|