如何在Android Studio中使用Kotlin动态修改问候TextView的展示内容

Kotlin 实现时段自适应问候语
核心实现步骤
- 编写时段判断工具方法
import java.util.Calendar fun getCurrentGreeting(): String { val currentHour = Calendar.getInstance().get(Calendar.HOUR_OF_DAY) return when (currentHour) { // 零点到下午4点区间 in 0..15 -> "早上好" // 下午4点到晚上8点区间 in 16..19 -> "晚上好" // 晚上8点到23点59分区间 in 20..23 -> "晚安" else -> "早上好" } }
- 页面中给TextView赋值
直接在Activity/Fragment的onResume生命周期中调用即可,保证用户每次打开页面都会刷新最新的问候语:
override fun onResume() { super.onResume() // 替换为你的TextView控件ID val greetingTextView = findViewById<TextView>(R.id.greeting_tv) greetingTextView.text = getCurrentGreeting() }
可选优化
如果需要实现APP后台停留到时段切换点后,切前台自动更新问候语,可以通过ProcessLifecycleOwner监听APP前后台切换事件,切前台时重新调用getCurrentGreeting()更新文本即可。
内容的提问来源于stack exchange,提问作者Amit Kumar
相关产品推荐
相关产品推荐

