要素の配列をフィルタリングする際に問題があります。要素のフィルタリング
Box
-[Zombies]
-[Players]
-[Weapons]
私は、上記のすべての配列を含むことができるボックスの束を持っています。
[Box]
ここで、除外したいボックスを除外したいと思います。 私は特定のzombieId + playerIdを選択した場合、私は唯一など
ものとボックスを取得する私のようなものを使用してみました:
let filteredBoxes = boxes.filter { (box) -> Bool in
selectedZombies.contains(where: { $0.zombieId == box.zombies.zombieId })
&&
selectedPlayers.contains(where: { $0.playerId == box.players.playerId })
&&
selectedWeapons.contains(where: { $0.weaponId == box.weapons.weaponId })
}
これは動作しますが、前にすべての3つのフィルタを選択するようユーザに要求します何かが表示されます。
また、選択されたゾンビのフィルタしか選択しなくても、ユーザーの選択に一致するボックスを表示する必要があります。
あなたは、ユーザーが「ゾンビ」と「武器」のみを選択してその2つだけをフィルタリングする必要がある場合、いくつかのフィルタオプションを選択することを意味しますか? –
はいいいえ – WYS