2011-03-14 88 views
2

我有一个按钮视图。我是否必须将其包装在布局中以便能够在活动中对其实例进行膨胀?是否有类似于View的模式,以便我可以声明性地设置一次,并创建它的多个实例?我可以从XML实例化/扩充视图吗?

谢谢。

编辑

我想我失去了一些东西约布局。是否意味着将其声明为可以实例化的模板?或者它们只能在另一个特定的布局中使用?

示例:

我在content.xml中定义了一个ScrollView Layout。它完全是独立的,不包含在任何其他布局中。在我的活动中,setContentView在我的主布局上被调用。是否有可能实例化content.xml的副本?我需要以某种方式更改“contentView”吗?

回答

0

将该视图封装在LinearLayout中,然后在整个应用程序中充分利用该布局。

+0

这就是我想的......但这是一个很好的做法吗?看起来有点像解决方法,因为它没有得到与编程相同的结构,因为你有额外的包装布局。我猜这不会影响性能。 – tnunamak 2011-03-14 03:59:01

+0

您不需要额外的LinearLayout。 – 2011-03-14 04:31:29

2

你不需要包装它。下面的XML可以直接充气:

<?xml version="1.0"?> 
<Button ... /> 
+0

我用什么API来夸大它?有看似不赞成的getViewInflate()方法的提示,但我找不到其他任何东西。 – tnunamak 2011-03-14 04:35:27

+0

使用LayoutInflater。 – 2011-03-14 05:54:26

+0

没有机会尝试它,但是LayoutInflater的文档说它可以膨胀:“一个XML布局资源。”我认为一个视图可以被认为是一个布局“资源”,即使它不是一个布局,但我的印象是,你只能使用LayoutInflater进行布局。我今晚会试一试,并将结果发回。 – tnunamak 2011-03-15 00:57:38

相关问题