小编Ami*_*bdi的帖子

Android Unresolved参考:findNavController错误

我正在使用Kotlin并在我的项目中添加了所有引用.

// Navigation
implementation "android.arch.navigation:navigation-common-ktx:$rootProject.nav_version"
implementation "android.arch.navigation:navigation-fragment-ktx:$rootProject.nav_version"
implementation "android.arch.navigation:navigation-runtime-ktx:$rootProject.nav_version"
implementation "android.arch.navigation:navigation-ui-ktx:$rootProject.nav_version"
Run Code Online (Sandbox Code Playgroud)

我也在build.gradle之上有这些

apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' apply plugin: 'kotlin-kapt' apply plugin: 'androidx.navigation.safeargs'

我在我的片段中使用它就像这样

class HomeFragment : BaseFragment(){

    ...

    override fun onCategoryItemClicked(category: Category) {
        view.findNavController()?.navigate(R.id.phrasesFragment)
    }
}
Run Code Online (Sandbox Code Playgroud)

我也可以看到这个生成的扩展名(文件)

fun Fragment.findNavController(): NavController =
    NavHostFragment.findNavController(this)
Run Code Online (Sandbox Code Playgroud)

android navigationcontroller kotlin android-jetpack

18
推荐指数
1
解决办法
5256
查看次数

Android Material 文本输入布局结束图标不可见但正常

我最近发现了 Material Design TexInputLayout 的一个错误以及它使 endIcon 可见的方式。

假设您已正确设置所有内容并启用了结束图标,例如:

inputLayout.endIconMode == END_ICON_CLEAR_TEXT
Run Code Online (Sandbox Code Playgroud)

问题是,如果你定义一个 focusListener 像:

inputLayout.editText?.setOnFocusChangeListener { view, hasFocus -> ...}
Run Code Online (Sandbox Code Playgroud)

并导航到其中包含此 textInputLayout 的屏幕,其中包含一些已填充的文本,如下图所示

1

您会注意到 endIcon 没有显示,但如果您点击它应该在的位置,它就会起作用。

即使通过使其可见来确保它应该显示也inputLayout.isEndIconVisible = 无济于事。通过调试,您可以看到您点击了public void setEndIconVisible(boolean visible)真实值,但仍然没有使图标可见。

我找到了一个解决方案,我已将其作为答案发布。

xml user-interface android material-design textinputlayout

4
推荐指数
1
解决办法
3565
查看次数

在路径上找不到类“java.lang.Math8”:DexPathList

将 Gradle 版本迁移到 7.2 后,运行应用程序时出现此错误。我注意到它指向 Java 8 日期/时间功能,LocalDate. 我的项目已经coreLibraryDesugaringEnabled = true启用了。

android gradle java-8 localdate

4
推荐指数
1
解决办法
1381
查看次数