在Android中创建动态自定义视图

时间:2015-03-16 09:11:02

标签: android android-activity android-custom-view

我需要在我的应用程序中生成动态自定义视图。

我需要一个自定义视图,该视图由图像按钮和2个文本视图组成,上方和下方按钮。图像按钮上还应该有一个onClick监听器,按下时会调用一个函数。

通过动态我的意思是这些视图将按需创建,应该有一个“虚拟”结构,我应该能够根据需要创建尽可能多的自定义视图。

我该怎么做?

2 个答案:

答案 0 :(得分:0)

只需使用xml为视图创建布局,然后使用布局inflater:

LayoutInflater inflater = (LayoutInflater) context
        .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View yourView = inflater.inflate(R.layout.view_layout, parent, false);

要访问它的组件,请使用:

ImageButton imageButton = (ImageButton) yourView.findViewById(R.id.button);

答案 1 :(得分:0)

您可以从创建扩展View类的自定义视图类MyCustomView开始。为自定义视图创建单独的XML布局(虚拟结构),并将其扩展到自定义视图构造函数

LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
inflater.inflate(R.layout.my_custom_view_layout, this, true);

您可以将任何侦听器添加到将成为此复合视图类的一部分的Button视图中。请查看此链接以进一步了解:http://www.vogella.com/tutorials/AndroidCustomViews/article.html

最后,只需将此对象视为一个视图,然后将其放在任何需要的界面上。