Компонент навигации Android: ошибка NavHostFragments не найденаAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Компонент навигации Android: ошибка NavHostFragments не найдена

Сообщение Anonymous »

В настоящее время я внедряю компонент навигации в свое приложение, но, похоже, обнаружение NavHostFragment просто не работает, что бы я ни делал.
Я пробовал, перестраивал, делал недействительным и перезапускаю, меняю имена и обновляю свою Android Studio, но, похоже, ничего не работает. Я думаю, что это также причина, по которой я получаю сообщение об ошибке при попытке получить NavController в моем файле MainActivity.kt, поскольку он возвращает значение null.
Android Studio версии 4.0.1
изображение nav_graph.xml:
Изображение

nav_graph.xml









main_activity.xml









MainActivity.kt
class MainActivity : AppCompatActivity() {

private lateinit var toolbar: Toolbar
private val navController by lazy {
(supportFragmentManager.findFragmentById(R.id.main_fragment) as NavHostFragment).navController
}

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.main_activity)
toolbar = findViewById(R.id.mainToolBar)
setSupportActionBar(toolbar)
setupActionBarWithNavController(navController)
}

override fun onCreateOptionsMenu(menu: Menu?): Boolean {
val inflater: MenuInflater = menuInflater
inflater.inflate(R.menu.main_menu_bar, menu)
return true
}
}

build.gradle (:app)
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'

android {
compileSdkVersion 29
buildToolsVersion "29.0.3"

defaultConfig {
applicationId "com.example.app"
minSdkVersion 23
targetSdkVersion 29
versionCode 1
versionName "1.0"

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}

buildTypes {
debug {}

release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}

dataBinding {
enabled true
}
}
}

dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
// Retrofit Libraries
implementation 'com.squareup.retrofit2:retrofit:2.6.0'
implementation 'com.squareup.retrofit2:converter-gson:2.6.0'

// Picasso Library
implementation 'com.squareup.picasso:picasso:2.71828'
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
implementation 'androidx.core:core-ktx:1.3.0'
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.recyclerview:recyclerview:1.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'

// Navigation libraries
def nav_version = "2.3.0"
implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"
implementation "androidx.navigation:navigation-ui-ktx:$nav_version"
}


Подробнее здесь: https://stackoverflow.com/questions/637 ... ound-error
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»