2010-01-19 48 views
0

我的视图不使用XML布局,我只是引用Action类中定义的View子类。该应用程序由一个空的画布组成,用户可以创建/与各种2D对象进行交互。这很简单,但我希望屏幕上的小部件出现在屏幕的右侧,允许用户选择要创建的各种对象。因为可以有多个对象,所以小部件将仅显示两个或三个最近使用的对象,并且在单击扩展按钮时展开以呈现所有可能的对象。Android布局 - 与静态元素混合动态

由于这个小部件的高度特殊性,我想我需要编写自己的自定义小部件,但不确定如何将其集成到我现有的视图中。是否有可能以这种方式内联显示小部件?

我正在考虑的另一个选项是使用Drawable在画布上创建此小部件,检测鼠标点击并以这种方式处理动作。然而,听起来这不是在Android体系结构中正确的做法。

回答

0

我不知道为什么你需要一个自定义小部件。什么是关于你的小部件的“非常具体”? 听起来好像你只是想要一些图标供用户选择。

要做到这一点,您可以使用ListView,其内容为ImageButtons。您可以编辑ListView的内容,具体取决于它是否处于展开状态(它是否有3个项目或10个)。

+0

好的 - 但是我特别想知道的是,如果我可以将这个视图混合成一个动态布局。 – IcedDante 2010-01-19 00:25:09

+0

你可以尝试使用画布和ListView作为两个孩子的FrameLayout。然后在您的onCreate方法中,您可以通过id获取画布,并按照您当前的方式使用它。 – 2010-01-19 01:08:37

+0

FrameLayout,呃?好的 - 我会检查出来的! – IcedDante 2010-01-19 19:15:30