Направление безопасных аргументов Kotlin не генерируетсяAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Направление безопасных аргументов Kotlin не генерируется

Сообщение Anonymous »

Я только что создал новый проект в Kotlin и хотел добавить в него навигацию и безопасные аргументы.

Я создал 2 фрагмента (DishListFragment, DishDetailFragment) и навигационный граф с действием одного фрагмента на другой в нем. Я добавил одну кнопку в свой первый фрагмент и установил прослушиватель кликов, используя привязку представления:
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
binding.deneme.setOnClickListener {
val action = DishListFragmentDirections.actionDishListFragmentToDishDetailFragment()
findNavController().navigate(action)
}

}

но когда я пытаюсь создать действие направления с именем DishListFragmentDirections, студия Android выдает мне красные ошибки:
Unresolved reference: DishListFragmentDirections

и говорит, что мне следует создать класс DishListFragmentDirections.
Что я пробовал:

В файл build.gradle уровня приложения я добавил:
implementation(libs.androidx.navigation.safe.args.generator)
implementation(libs.androidx.navigation.safe.args.gradle.plugin)

Я пробовал аннулировать кеши и пересобрать проект, но ничего не помогло. Я пробовал что-то делать в документе, но думаю, что структура изменилась или что-то в этом роде.
Модуль build.gradle.ktsplugins {
alias(libs.plugins.androidApplication)
alias(libs.plugins.jetbrainsKotlinAndroid)
}

android {
namespace = "com.example.myapplication"
compileSdk = 34

defaultConfig {
applicationId = "com.example.myapplication"
minSdk = 24
targetSdk = 34
versionCode = 1
versionName = "1.0"

testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}

buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = "1.8"
}

buildFeatures {
viewBinding = true
}

}

dependencies {

implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.material)
implementation(libs.androidx.activity)
implementation(libs.androidx.constraintlayout)
implementation(libs.androidx.navigation.fragment)
implementation(libs.androidx.navigation.safe.args.generator)
implementation(libs.androidx.navigation.safe.args.gradle.plugin)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
}

Проект build.gradle.kts
// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
alias(libs.plugins.androidApplication) apply false
alias(libs.plugins.jetbrainsKotlinAndroid) apply false
}


Подробнее здесь: https://stackoverflow.com/questions/781 ... generating
Ответить

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

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

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

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

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