如何在android中加载活动的特定布局

如何在android中加载活动的特定布局,android,android-layout,unity3d,vuforia,Android,Android Layout,Unity3d,Vuforia,我正在开发一款增强现实android应用程序。我使用vuforia在unity中开发了这个应用程序,然后将它导入android studio,因为我想在android studio中设计它。生成的项目结构中的活动名称为unityplayepractivity,在项目中没有布局。活动被传递到UnityPlayer类并生成布局。这是我的unityplayepractivity活动的一些代码 protected UnityPlayer mUnityPlayer; // don't change the

我正在开发一款增强现实android应用程序。我使用vuforia在unity中开发了这个应用程序,然后将它导入android studio,因为我想在android studio中设计它。生成的项目结构中的活动名称为
unityplayepractivity
,在项目中没有布局。活动被传递到
UnityPlayer
类并生成布局。这是我的
unityplayepractivity
活动的一些代码

protected UnityPlayer mUnityPlayer; // don't change the name of this variable; referenced from native code

// Setup activity layout
@Override protected void onCreate(Bundle savedInstanceState)
{
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    super.onCreate(savedInstanceState);

    getWindow().setFormat(PixelFormat.RGBX_8888); // <--- This makes xperia play happy

    mUnityPlayer = new UnityPlayer(this);
    setContentView(mUnityPlayer);
    mUnityPlayer.requestFocus();
}
protectedunityplayer-mUnityPlayer;//不要更改此变量的名称;从本机代码引用
//设置活动布局
@在创建时覆盖受保护的void(Bundle savedInstanceState)
{
requestWindowFeature(窗口。功能\u无\u标题);
super.onCreate(savedInstanceState);

getWindow().setFormat(PixelFormat.RGBX_8888);//不可能通过引用对象来执行此操作(Java不支持按引用调用)

您需要在UnityPlayer类中定义一个新函数,用于生成布局并返回LayoutParams对象

然后使用布局充气机。类似如下:

LayoutParams mParams=mUnityPlayer.layoutGenerator() //some function to generate LayoutParams
LayoutInflator.getLayoutInflator().inflate(LayoutParams);

最后,我找到了解决问题的简单方法。我使用framelayout在子视图中显示unity场景,现在我可以轻松自定义UI。检查并查看更多信息。

请详细说明一下,好吗?我想自定义布局,但不知道如何针对
UnityPlayerPractivity
活动生成布局!代替setContentView
UnityPlayer。class
class在
unity classes
Jar文件中压缩,无法编辑(因为它已经编译)或替换。那么我该怎么办?在这种情况下,您可以尝试扩展该类,然后重写现有方法。