Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android布局-混合动态和静态元素_Java_Android_Layout_Widget - Fatal编程技术网

Java Android布局-混合动态和静态元素

Java Android布局-混合动态和静态元素,java,android,layout,widget,Java,Android,Layout,Widget,我的视图没有使用XML布局,我只是引用Action类中定义的视图子类。该应用程序由一个空画布组成,用户可以创建/与各种2D对象交互。这是简单的部分,但我希望屏幕上的小部件出现在屏幕的右侧,允许用户选择要创建的各种对象。因为可以有几个对象,所以小部件将只显示最近使用的两个或三个对象,并在单击展开按钮时展开以显示所有可能的对象 由于这个小部件的高度特殊性,我认为我需要编写自己的自定义小部件,但不确定如何将其集成到现有视图中。是否可以以这种方式内联显示小部件 我正在考虑的另一个选项是使用Drawabl

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

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


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

我不确定您为什么需要自定义小部件。小部件的“高度特定”是什么? 听起来你只是想让用户选择一些图标


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

好的,但我想知道的是,我是否可以将这个视图混合到一个动态布局中。您可以尝试将画布和ListView作为两个子项使用FrameLayout。然后,在onCreate方法中,您可以按id获取画布,并按当前的方式使用它。