- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我使用 MonoGame 和 Xamarin 为 Android 开发了一款游戏。我将 BugSense 合并到其中并迅速开始获取以下异常堆栈跟踪:
System.NullReferenceException: Object reference not set to an instance of an object
at Microsoft.Xna.Framework.AndroidGameWindow.SetDisplayOrientation (Microsoft.Xna.Framework.DisplayOrientation) <0x001c4>
at Microsoft.Xna.Framework.AndroidGameWindow.SetOrientation (Microsoft.Xna.Framework.DisplayOrientation,bool) <0x00097>
at Microsoft.Xna.Framework.OrientationListener.OnOrientationChanged (int) <0x001c7>
at Android.Views.OrientationEventListener.n_OnOrientationChanged_I (intptr,intptr,int) <0x0003f>
at (wrapper dynamic-method) object.ed9d7c7c-f3e6-4d7a-9249-1a139a251aed (intptr,intptr,int) <0x00043>
我的 Activity 是这样设置的:
[Activity(Label = "My Cool Game"
, MainLauncher = true
, Icon = "@drawable/icon"
, Theme = "@style/Theme.Splash"
, AlwaysRetainTaskState = true
, LaunchMode = Android.Content.PM.LaunchMode.SingleTask
, ScreenOrientation = ScreenOrientation.Portrait
, ConfigurationChanges = ConfigChanges.Orientation | ConfigChanges.Keyboard | ConfigChanges.KeyboardHidden)]
在游戏构造函数中我有以下内容:
public Game1()
{
_graphics = new GraphicsDeviceManager(this);
_graphics.PreferredBackBufferFormat = SurfaceFormat.Color;
_graphics.IsFullScreen = true;
_graphics.SupportedOrientations = DisplayOrientation.Portrait | DisplayOrientation.PortraitDown;
_graphics.ApplyChanges();
}
该项目设置为针对 v2.3 进行编译。我在我的测试设备上没有任何与方向相关的问题,所以我不确定是什么导致了这个异常,因此我无法修复它。
最佳答案
在处理另一个项目之前,我遇到过这个 Null Reference 异常。你将不得不原谅我对你的游戏领域的无知,但让我向你解释这意味着什么,也许它会帮助你解决这个问题。这个异常意味着内存中没有特定类型的对象可供系统处理。必须使用 new 关键字或以其他方式创建此对象的实例,才能将其识别为内存中的有效对象。
从阅读上面的错误消息来看,它似乎想要一个对象来初始化显示方向。在您的构造函数或 Activity 设置中,我看不到任何为显示方向创建任何对象的内容。因此该对象不在内存中,因此它为空。
关于c# - AndroidGameWindow.SetDisplayOrientation NullReferenceException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25654865/
documentation page对于 Camera.setDisplayOrientation 包含以下代码示例,说明使用它将“使相机图像以与显示器相同的方向显示”: public static
我使用仅视频。没有图片。请注意,setDisplayOrientation 只会在预览期间影响正确的显示方向。但是,如果要播放以横向模式或纵向模式拍摄的任何视频,它始终处于横向模式。 我在Androi
我在 android 中工作相机项目。我的问题是相机 setDisplayOrientation 方法不起作用,我在表面上的相机预览总是风景。我想在 SurfaceView 上进行纵向相机预览。我正在
我对 OpenCV 的 Android 相机示例代码感到困惑。他们制作了一个实现 SurfaceHolder.Callback 的自定义类,并将以下行放在方法 surfaceChanged 中: mC
我试图让相机预览在纵向模式下正常工作,其中允许 Activity 本身正常更改方向(即不锁定为横向)。 使用setDisplayOrientation()但是,严重破坏了预览的行为。 这可以通过 Go
我使用 MonoGame 和 Xamarin 为 Android 开发了一款游戏。我将 BugSense 合并到其中并迅速开始获取以下异常堆栈跟踪: System.NullReferenceExcep
我正在使用相机,我的应用程序将其设置为纵向模式 camera.setDisplayOrientation(90); 当 Activity 进入后台并返回时,显示方向回到 0,也就是横向,但是当我再次尝
我的相机应用程序有问题。相机 Activity 处于纵向模式。所以我给了 camera.setDisplayOrientation(90); 根据 SO 中的不同帖子,这将在纵向模式下正常工作。 但它
我正在使用 ZXing 3.1.0,我想在阅读后旋转相机库进行扫描 this topic和 this 我试图将 camera.setDisplayOrientation(90); 粘贴到旋转相机的 s
我在尝试以纵向模式进行相机预览时遇到问题。我已经阅读了有关它的各种文章,并且已经使用以下代码解决了它: Display display = ((CaptureActivity)context).get
使用 android.hardware.Camera,为了让相机输出适本地跟踪设备运动,我们需要将 OrientationEventListener 连接到 setDisplayOrientation
我试图创建一个用于研究的简单相机应用程序。我读了Android Camera Official Document然后开始编码。所以我做了一些步骤来让它工作 1.在应用中添加了相机功能所需的权限。 2.
我是一名优秀的程序员,十分优秀!