-1

我正在开发一个 Android 应用程序。我创建了一个自定义列表,如下所示:

private List<Model> getModel()
{

    List<Model> list = new ArrayList<Model>(); //Model is another class

    //Code to populate the list...
}

现在我需要在这个列表的末尾添加一个按钮。list.addFooterView(mybutton) 不起作用,因为它是一个自定义列表,而不是通过 listview 创建的。

如何在列表末尾添加按钮?

请帮忙!

提前致谢。

4

2 回答 2

0

如果你不想失去类型安全,你可以创建一个包装类。

public class MyModel{
    private List<Model> mList;
    private Button mButton;

    public MyModel(List<Model> l, Button b){
        mList = l;
        mButton = b;
    }

    ....
}
于 2013-05-01T16:44:01.113 回答
0

如果您的 Button 属于不同的类,则 Model (我假设)您可以使用如下未指定的列表:

List<?> l = new ArrayList<Object>();
List<Object> l = new ArrayList<Object>();

然后您可以向其中添加任何类型的对象。当然,这样一来,您就失去了类型安全性,并且您必须自己转换对象。代替 ?您也可以使用在这种情况下相同的 Object。

如果您的 Button 和 Model 具有公共基类,则可以创建列表作为基类的类型。但是,当您需要特定对象时,您仍然必须强制转换它。

于 2013-05-01T16:38:58.347 回答