PlayerAndroid/app/src/main/java/code/name/monkey/retromusic/activities/SettingsActivity.kt

84 lines
2.8 KiB
Kotlin
Raw Normal View History

2019-04-20 05:29:45 +00:00
package code.name.monkey.retromusic.activities
import android.os.Bundle
import android.view.MenuItem
import androidx.annotation.StringRes
import androidx.fragment.app.Fragment
2019-05-20 19:38:43 +00:00
import androidx.transition.TransitionManager
2019-12-01 15:27:01 +00:00
import code.name.monkey.appthemehelper.util.ATHUtil
import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper
import code.name.monkey.retromusic.R
2019-04-20 05:29:45 +00:00
import code.name.monkey.retromusic.activities.base.AbsBaseActivity
import code.name.monkey.retromusic.fragments.settings.MainSettingsFragment
2020-01-05 20:25:55 +00:00
import kotlinx.android.synthetic.main.activity_settings.appBarLayout
import kotlinx.android.synthetic.main.activity_settings.toolbar
2019-09-17 19:36:13 +00:00
class SettingsActivity : AbsBaseActivity() {
private val fragmentManager = supportFragmentManager
override fun onCreate(savedInstanceState: Bundle?) {
2019-12-05 18:18:54 +00:00
setDrawUnderStatusBar()
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_settings)
setStatusbarColorAuto()
2019-12-05 18:18:54 +00:00
setNavigationbarColorAuto()
setLightNavigationBar(true)
setupToolbar()
if (savedInstanceState == null) {
2019-12-01 15:27:01 +00:00
fragmentManager.beginTransaction().replace(R.id.contentFrame, MainSettingsFragment()).commit()
}
}
private fun setupToolbar() {
2019-05-20 19:38:43 +00:00
setTitle(R.string.action_settings)
2018-12-25 14:58:47 +00:00
toolbar.apply {
2019-12-01 15:27:01 +00:00
setBackgroundColor(ATHUtil.resolveColor(this@SettingsActivity, R.attr.colorSurface))
2018-12-25 14:58:47 +00:00
setNavigationOnClickListener { onBackPressed() }
2019-10-12 09:29:52 +00:00
ToolbarContentTintHelper.colorBackButton(toolbar)
2018-12-25 14:58:47 +00:00
}
2019-12-05 18:18:54 +00:00
setSupportActionBar(toolbar)
}
fun setupFragment(fragment: Fragment, @StringRes titleName: Int) {
val fragmentTransaction = fragmentManager
2020-02-17 15:41:32 +00:00
.beginTransaction()
.setCustomAnimations(
R.anim.sliding_in_left,
R.anim.sliding_out_right,
android.R.anim.slide_in_left,
android.R.anim.slide_out_right
)
2020-02-17 15:41:32 +00:00
fragmentTransaction.replace(R.id.contentFrame, fragment, fragment.tag)
fragmentTransaction.addToBackStack(null)
fragmentTransaction.commit()
2019-05-20 19:38:43 +00:00
TransitionManager.beginDelayedTransition(appBarLayout)
setTitle(titleName)
}
override fun onBackPressed() {
if (fragmentManager.backStackEntryCount == 0) {
super.onBackPressed()
} else {
2019-05-20 19:38:43 +00:00
setTitle(R.string.action_settings)
fragmentManager.popBackStack()
}
}
override fun onOptionsItemSelected(item: MenuItem): Boolean {
if (item.itemId == android.R.id.home) {
onBackPressed()
return true
}
return super.onOptionsItemSelected(item)
}
companion object {
2018-12-25 14:58:47 +00:00
const val TAG: String = "SettingsActivity"
}
}