Layout Monodroid:通过编程将自定义控件添加到具有水平和垂直居中的布局中

Layout Monodroid:通过编程将自定义控件添加到具有水平和垂直居中的布局中,layout,xamarin.android,Layout,Xamarin.android,我在以编程方式添加的RelativeLayout中有一个ImageView(ImageView是通过代码添加的,而不是RelativeLayout) 如果我通过XML添加ImageView,我会这样做: 但现在我希望这是程序化的。我怎样才能正确地对中?我已经尝试过创建RelativeLaout.Parameters,但是当我使用 RelativeLayout.LayoutParams p = new RelativeLayout.LayoutParams(this, null); //[1]

我在以编程方式添加的RelativeLayout中有一个ImageView(ImageView是通过代码添加的,而不是RelativeLayout)

如果我通过XML添加ImageView,我会这样做:

但现在我希望这是程序化的。我怎样才能正确地对中?我已经尝试过创建RelativeLaout.Parameters,但是当我使用

RelativeLayout.LayoutParams p = new RelativeLayout.LayoutParams(this, null);  //[1]
p.AddRule(...);[2]
在第1行抛出异常。此外,我不知道如何将这些LayoutParameters应用于ViewGroup.LayoutParameters

此外,我不能只生成ViewGroup.LayoutParameters,因为
1.它们似乎没有我需要的定心(水平和垂直)元素。
2.每个示例似乎都表明有一个构造函数仅将布局宽度和布局高度作为参数,但实际上没有。

在有人说要先添加布局之前,请告诉我如何在代码中居中布局。谢谢


请帮助。

方法很简单:

创建只需要组件的xaml—将文件放在布局文件夹中

然后使用充气服务在您想要的代码内充气控件(确保按如下所示创建LayoutFlator):

那么简单地说:

_inflatorservice.Inflate(Resource.Layout.[control], parent);

鲍勃是你妈妈的哥哥

方法很简单:

创建只需要组件的xaml—将文件放在布局文件夹中

然后使用充气服务在您想要的代码内充气控件(确保按如下所示创建LayoutFlator):

那么简单地说:

_inflatorservice.Inflate(Resource.Layout.[control], parent);

鲍勃是你妈妈的哥哥

感谢没有人试图回答这个问题!感谢没有人试图回答这个问题!