在android中有不同类型的Layouts LinearLayout会将项目线性放置(水平/垂直)。 RelativeLayout可以做得更好,并且可以相对于其他项目放置项目。
通过覆盖RelaiveLayout我想创建一个以循环方式绘制元素的Layout(如图所示)。我可以使用此处的代码段http://developer.samsung.com/android/samples-4
来执行此操作但它只是从java代码创建整个布局,所以如果我需要制作一些复杂的布局,将这个圆圈作为布局中的一个元素,它会让我发疯,因为我必须编写很多代码。
我想以更简单的方式做到这一点,这样我就可以在XMLs布局中使用相同的概念。 任何制作自定义布局专家的人都可以告诉我如何实现同样的目标。我想要的东西,我有一个布局文件
从java代码中我将使用id获取CircleLayout并将Set设置为CircleLayout类的Object。现在应该有一些使用它们在CircleLayout类中编写的函数我可以在布局中进行修改,如
CircleLayout circle= (CircleLayout)findviewById(R.id.circle);
circle.setRadiusOfLargestRing(20);
circle.setNumberOfRings(6);
//Define any type of view form java
View v1 =new View(Context);
circle.setCenteralView(v1);
View v2 =new View(Context);
circle.addElementOnrings(ringNumber, v2)
..so on
我想要最多三个戒指,如果戒指是由可绘制的反弹形成的(如三个戒指已放置在可绘制文件夹中),我没有问题。
然后我们可以为插入到环中的每个视图设置监听器。 我的布局应足够智能,以图片中所示的方式将视图放置在环中。
我很高兴如果有人可以帮助我开发一个图书馆,那么其他人也可以从中受益。
如果有人可以指导我,我准备编写完整的代码。