android onBackPressedDispatcher 不是 运行
android onBackPressedDispatcher not run
我想提供自定义后退导航
我在 Fragment
的 onCreate
上有此代码:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
arguments?.let {
param1 = it.getString(ARG_PARAM1)
param2 = it.getString(ARG_PARAM2)
}
setHasOptionsMenu(true)
requireActivity().onBackPressedDispatcher.addCallback(
this,
object : OnBackPressedCallback(true) {
override fun handleOnBackPressed() {
Log.e("onCreate:", "back pressed invoked")
}
}
)
Log.e("onCreate: ", "Run")
}
片段声明:
class InsertFragment : Fragment() {
}
我使用导航组件,我的库版本是:
def nav_version = "1.0.0"
implementation "android.arch.navigation:navigation-fragment-ktx:$nav_version"
implementation 'androidx.appcompat:appcompat:1.1.0'
当我点击后退按钮时,我没有输出 Log
,我错过了什么?
onBackPressedDispatcher
用于手柄设备后退按钮。
因为这个 Log
只有 运行 当按下设备后退按钮时
我想提供自定义后退导航
我在 Fragment
的 onCreate
上有此代码:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
arguments?.let {
param1 = it.getString(ARG_PARAM1)
param2 = it.getString(ARG_PARAM2)
}
setHasOptionsMenu(true)
requireActivity().onBackPressedDispatcher.addCallback(
this,
object : OnBackPressedCallback(true) {
override fun handleOnBackPressed() {
Log.e("onCreate:", "back pressed invoked")
}
}
)
Log.e("onCreate: ", "Run")
}
片段声明:
class InsertFragment : Fragment() {
}
我使用导航组件,我的库版本是:
def nav_version = "1.0.0"
implementation "android.arch.navigation:navigation-fragment-ktx:$nav_version"
implementation 'androidx.appcompat:appcompat:1.1.0'
当我点击后退按钮时,我没有输出 Log
,我错过了什么?
onBackPressedDispatcher
用于手柄设备后退按钮。
因为这个 Log
只有 运行 当按下设备后退按钮时