イベントを発生させるための RoboGuice API に基づいて、CustomButtonView 実装内で次のようにしました。
@Override
public void onClick(View v) {
CommonApplication.getInstance().fireEvent(new InteractionButtonClicked());
// setSelected();
}
public class InteractionButtonClicked
{
public String getRef()
{
return (String)getTag();
}
}
// handle the click event
protected void handleClick(@Observes InteractionButtonClicked button) {
if (getTag().equals(button.getRef())) {
//do A
} else {
//do B
}
}
ただし、このコンテキストでは handleClick は呼び出されません => メソッドが含まれているメインアクティビティで @Observer を設定すると、メソッドが呼び出されます。
理由を理解しようとしています.Customviewコンテキストでイベントを観察するオプションがある場合...