¿Xamarin Android ejecutará OnCreateView cuando se llama al constructor IntPtr?
Estoy enterado de la dificultad del constructor en Android de Xamarin como se explica aquí: Ningún constructor encontrado para … (System.IntPtr, Android.Runtime.JniHandleOwnership)
Y todos los fragmentos y actividades y otras vistas personalizadas que creo en la importación de aplicación de este constructor.
- Cómo ocultar las pestañas de Android utilizando Xamarin Formulario renderizador personalizado?
- Visual Studio no reconoce la función BindingInflate de MvxFragment
- FragmentPagerAdapter sólo existe en Android.Support.V4.App (y no en Android.App)
- Clase de clase de aplicación personalizada en Mono para Android
- Java.lang.IllegalArgumentException: ya agregado Lokio / AsyncTimeout
Algunas veces, sin embargo, se null reference exception
una null reference exception
en el método OnCreateView
. Ejemplo:
public class TestView: Android.Support.V4.App.Fragment{ public TestClass _testClass; public TestView (TestClass testClass) { this._testClass = testClass; } public TestView(IntPtr javaReference, Android.Runtime.JniHandleOwnership transfer) : base(javaReference, transfer) { } public override Android.Views.View OnCreateView (Android.Views.LayoutInflater inflater, Android.Views.ViewGroup container, Android.OS.Bundle savedInstanceState) { View view = inflater.Inflate (Resource.Layout.Fragment_TestView, container, false); _testClass.ExecuteTestMethod(); return view; } }
Este código genera una null reference exception
en OnCreateView
, ocasionalmente. Esto ocurre muy raramente y nunca cuando creo la vista desde el código directamente y probarlo entonces.
Ahora claramente el único punto en este código donde se puede lanzar la excepción está en la variable _testClass
. Así que ahora, obviamente, mi pregunta es, ¿es el método OncreateView
también se ejecuta cuando se javaReference
constructor javaReference
?
- Configuración de la versión de Android
- Error después de habilitar Multi-Dex en Xamarin Android
- Cómo se utiliza la clase BluetoothA2dp en Xamarin
- Xamarin no muestra la imagen de formularios: Android
- Instalar GooglePlayServices con NuGet me da un error de Install-Package
- Ocultar entrada suave en OnCreate
- Xamarin - desconectado del renderizador de diseño
- Las pestañas de Android en fragmento con barra de herramientas de contracción
Incluso en Java onCreateView
se puede llamar en situaciones donde el constructor no sería, que es el ciclo de vida del fragmento funciona:
Su constructor se llama antes de que se agregue Fragmento, pero su variable de instancia _testClass
no siempre se establece porque Android llamará al constructor predeterminado al restaurarlo. Supongo que sus accidentes están ocurriendo cuando usted gira el dispositivo (tres veces en una fila?) Y / o cuando usted va a otra aplicación y vuelve
Necesita administrarlo persistiendo los argumentos (tipos de datos básicos soportados por Bundle
) necesarios para crear una instancia de TestClass
con onSaveInstanceState
y luego usarlos para crear una instancia de TestClass
en onResume
- Impresión Bluetooth de Android
- RxJava2 función de rebote no funciona correctamente en RecyclerView – Android