要给出“Android - Jetpack 导航”包含代码示例的解决方法,可以按照以下步骤操作:
dependencies {
def nav_version = "2.3.4"
implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"
implementation "androidx.navigation:navigation-ui-ktx:$nav_version"
}
class MainActivity : AppCompatActivity() {
private lateinit var navController: NavController
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
navController = findNavController(R.id.nav_host_fragment)
// 将导航控制器与底部导航视图绑定
findViewById(R.id.bottom_nav_view)
.setupWithNavController(navController)
}
override fun onSupportNavigateUp(): Boolean {
return navController.navigateUp() || super.onSupportNavigateUp()
}
}
class HomeFragment : Fragment() {
private lateinit var binding: FragmentHomeBinding
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View {
binding = FragmentHomeBinding.inflate(inflater, container, false)
binding.button.setOnClickListener {
val action = HomeFragmentDirections.actionHomeFragmentToDetailsFragment()
findNavController().navigate(action)
}
return binding.root
}
}
这些代码示例演示了如何使用 Android Jetpack 导航库实现基本的导航功能。您可以根据自己的需求进行修改和扩展。