【Defold】collectionproxy で load した Collection のユーザー入力を受け付ける
main.collection から collectionproxy を使って sub の collection を load した場合、そのままではユーザー入力を受け付けない。on_inputによるユーザー入力を受け付けるためには acquire_input_focus メッセージを投げる必要があります。
目次
main.collection側のスクリプト
SUB コレクションをロードします。
local SUB = msg.url("main:/collections#title_proxy")
function init(self)
msg.post(SUB, "load")
end
sub.collection側のスクリプト
サブのコレクションから acquire_input_focus を投げて on_input によるユーザー入力を受け付けます。
local SUB = msg.url("main:/collections#sub_proxy")
function init(self)
msg.post(SUB, "acquire_input_focus")
end
function on_input(self, action_id, action)
if action_id == hash("touch") and action.pressed then
print("sub.Touch!")
end
end
これでサブのコレクションのユーザー入力が有効になります。