我正在使用 navigation
组件
'androidx.navigation:navigation-fragment-ktx:2.3.3'
'androidx.navigation:navigation-ui-ktx:2.3.3'
我不明白为什么当我从我的 startDestination
导航到下一个 Fragment
我短暂地闪烁了一下,然后我看到之前的活动持续了几毫秒。
当我导航到不同的片段时,这不会发生。
无论有没有导航动画都会发生这种情况。
尝试在堆栈中没有前一个 Activity
的情况下,它显示了 OS
主屏幕。
navigation.xml
文件如下所示:
<fragment
android:id="@+id/barcodeScannerFragment"
android:name="com.sightplan.sightplanmobile.feature.barcode_scanner.BarcodeScannerFragment"
android:label="@string/receive_package_barcode_input_view_header_param_title"
tools:layout="@layout/barcode_scanner_fragment_layout">
<action
android:id="@+id/open_receive_package_details"
app:destination="@id/receivePackageDetailsFragment"
app:enterAnim="@anim/slide_left_anim"
app:exitAnim="@anim/wait_anim"
app:popEnterAnim="@anim/wait_anim"
app:popExitAnim="@anim/slide_right_anim" />
</fragment>
<fragment
android:id="@+id/receivePackageDetailsFragment"
android:name="com.sightplan.sightplanmobile.packages.receive_package.ReceivePackageDetailsFragment"
android:label="@string/receive_package_activity_on_create_header_bar_title"
tools:layout="@layout/receive_package_details_fragment_layout">
.......
从 startDestination
导航到 Receive Package
屏幕的代码如下:
val action = BarcodeScannerFragmentDirections.openReceivePackageDetails()
Navigation.findNavController(it).navigate(action)
关于如何解决这个问题的任何想法?
答案 0 :(得分:0)
问题是由于 theme
内的 navigation
Activity 设置了 AndroidManifest.xml
。
我有一个自定义的 AppTheme
,其中 android:windowIsTranslucent
设置为 true
。
删除即可解决问题。