我将 android studio 版本更新为 bumblebee 版本。
现在我想将导航组件添加到我的项目中。
我想将类路径添加到 gradle,但是这个文件 gradle 已更改,我不知道如何添加它。
我想将其添加 classpath("androidx.navigation:navigation-safe-args-gradle-plugin:$nav_version")到 gradle 文件中!
我的项目 gradle 文件是:
plugins {
id 'com.android.application' version '7.1.0' apply false
id 'com.android.library' version '7.1.0' apply false
id 'org.jetbrains.kotlin.android' version '1.6.10' apply false
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Run Code Online (Sandbox Code Playgroud)
如何将此类路径添加到应用程序 gradle ?!
在我的应用程序中,我想使用RecyclerView适配器并设置我使用的数据DiffUtils。
我想从服务器搜索数据然后将其显示到RecyclerView!
我写了下面的代码,但是搜索数据后显示项目重叠!
我想先清除以前的数据,然后添加新项目!
片段代码:
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
//InitViews
binding.apply {
searchEdt.addTextChangedListener {
val search = it.toString()
if (search.isNotEmpty()) {
viewModel.searchList.observe(viewLifecycleOwner) { response ->
lastMoviesAdapter.differ.submitList(response.data)
searchMoviesRecycler.initRecycler(LinearLayoutManager(requireContext()), lastMoviesAdapter)
}
viewModel.loadSearchMovies(search)
} else {
Snackbar.make(view, getString(R.string.fillAllFields), Snackbar.LENGTH_SHORT).show()
}
}
Run Code Online (Sandbox Code Playgroud)
适配器代码:
class LastMoviesAdapter @Inject constructor() : RecyclerView.Adapter<LastMoviesAdapter.ViewHolder>() {
private lateinit var binding: ItemHomeMoviesLastBinding
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
binding = ItemHomeMoviesLastBinding.inflate(LayoutInflater.from(parent.context), parent, false)
return ViewHolder()
} …Run Code Online (Sandbox Code Playgroud)