Fixed
Status Update
Comments
il...@google.com <il...@google.com>
il...@google.com <il...@google.com>
il...@google.com <il...@google.com> #2
Only the `argType="reference"` accepts resource IDs (and returns an int that you'd pass to getContext().getString()), so it is working as intended that a "string" type is exactly what you put into your XML. It was important that the build time code gen and the runtime behavior always matches and that was not possible in the general cases - see edge cases such as https://issuetracker.google.com/issues/111736515 for some background.
Please starhttps://issuetracker.google.com/issues/36994900 to track progress towards allowing placeholders in XML files, which would be the recommended way of filling in placeholders at compile time.
Please star
[Deleted User] <[Deleted User]> #3
Ok thanks, I understand now, I wasn't aware of argType="reference". Anyway I think it is a bit strange that behavior is different if we navigate using safe args gen code (navController.navigate(WebPageFragmentDirections.actionGlobalHomeFragment())) and code without safe args (navController.navigate(R.id.homeFragment)) if the navigation xml file is the same.
Description
Version used: 1.0.0-alpha08
Devices/Android versions reproduced on:
I'm trying to use the default navigation animations in my navigation graph. But the default animations (for example nav_default_pop_exit_anim and nav_default_pop_enter_anim) are giving me:
Cannot resolve symbol '@anim/nav_default_pop_enter_anim'. Validates Resource references inside Android XML files.
In my navigation_graph.xml:
<fragment
android:id="@+id/MyFragment"
android:name="com.my.app.mobile.MyFragment"
android:label="MyFragment" >
<action
android:id="@+id/action_MyFragment_to_YourFragment"
app:destination="@+id/YourFragment"
app:enterAnim="@anim/slide_left_enter"
app:exitAnim="@anim/nav_default_pop_exit_anim"
app:popEnterAnim="@anim/nav_default_pop_enter_anim"
app:popExitAnim="@anim/slide_right_exit"
app:popUpTo="@+id/MyFragment" />
</fragment>
I'm using Android Studio 3.3 RC 2 and my gradle has:
implementation "android.arch.navigation:navigation-fragment-ktx:$navVersion"
implementation "android.arch.navigation:navigation-ui-ktx:$navVersion"
androidTestImplementation "android.arch.navigation:navigation-testing:$navVersion"
where navVersion = "1.0.0-alpha08"
What's weird is that the Navigation Design view has access to these default animations. But when I switch to the Navigation Text view, those same default animations are red with warnings. Has anybody else encountered this problem? How do I get access to these default animations?
I have tried cleaning, rebuilding, syncing Gradle, invalidating and restarting.
If this is a bug in the library, we would appreciate if you could attach:
- Sample project to trigger the issue.
- A screenrecord or screenshots showing the issue (if UI related).