2011-01-11 37 views
0

我有一个活动,显示自定义组件列表(在LinearLayout中)。每个组件代表数据库中的用户,并包含一个按钮(等等)。当我点击自定义组件中的按钮时,我想将消息传回Activity以保存用户。该按钮知道用户的ID。适当使用事件

我想知道如何最好的沟通回活动?在按钮的点击事件中,应该派发一个新事件(并将其捕获到活动中)?如果是这样,我可以将用户ID添加到事件中吗?我是新来的事件,但我认为我需要创建自己的自定义事件类型?

我想到的另一种方式是将活动的引用传递给组件,以便按钮可以调用活动的方法,例如'component.parentActivity = this',但尽管我认为它会起作用,我不确定这是否是“正确”的方式。

谢谢

回答

0

您可以实现View.OnClickListener接口。你需要实现的onClick方法将把View(被点击的东西)传递给它。因此,您应该掌握所点击的所有细节,并按照您希望的方式处理它。

我不清楚你的问题是你的意思是'组件'?这是一个自定义视图?或视图的布局?或其他?

+0

对不起,这是一个自定义视图。这是一个扩展了LinearLayout的java类,并且我添加了一个按钮作为子视图和其他一些东西。感谢您的提示。听起来像事件是做到这一点的正确方法,我的活动需要实现View.OnClickListener然后捕捉事件(如果我误解了请纠正我)。谢谢 – Richard 2011-01-11 11:48:48