Villagers that have a trapdoor at head height will not pick up food. Also villagers in a minecart on a rail will not pick up food, but villagers in a minecart not on a rail will pick up food. This has ruined several villager breeders that used to work.
Linked issues
Attachments
Comments 4
I've been testing and have found a few issues:
In a minecart on rails, villagers aren't able to pick up food at their feet height, but can pick up stuff at face height ie. put a block next to the rail and put stuff on it. They also can't pick up items that are in the 2-3 block areas they occupy (they clip into the block above their head so u can't actually place blocks above their head)
When their head is in a block, even transparent block like glass, slab, or a closed trapdoor (ie. horizontal), whether it be at the bottom or top half, it can't pick up food even if it's at their feet, in their hitbox
If they have 4 blocks surrounding them at their feet level and a block above their head, trapping them in, they can't pick stuff up from outside their "cage", even if if the items are right in front of their face, they only can pick stuff from the two block areas they are standing in (feet and head block areas)
If their head is in open trapdoors (ie. vertical), it can't pick up items in the block area their feet is in
If their head is in open trapdoors and at feet level are surrounded by 4 blocks on each cardinal direction (including transparent blocks, trapdoors (top, bottom, open and closed), slabs and min 4-layer snow), they can't pick food up at all, even at face level. By removing a single block to one side of it, the villager will be able to pick the food up in front of it, but not if the food is in the 2 block area they are standing in.
I think most of these have to do with the villager being either unable to pathfind to the block the items are on, or unwilling to because the "cost" of walking on a trapdoor is too high/not a preferred path for them to walk on (according to wiki), even though they only way out is to jump out of the open trapdoor. They cannot be forced out of closed trapdoors even if a zombie attacks them, but if the trapdoor is open, they easily run out. Their AI allows them to occasionally walk out of open trapdoors themselves, then they can move to the food to pick it up, but it's quite rare for them to walk out of their own accord.
P.S. Sorry for the long comment.
The issue with villagers in minecarts is already tracked at MCPE-81545 so I have removed it from the summary.
The issue with trapdoors and other block collisions and obstructions probably has the same underlying cause as MCPE-145830.
Same issue here on Windows 10. If there is any transparent block in the villager's head area, that will prevent the villager from picking up food. Also, villagers now will only pick up food at their feet when they used to have a range they could pick up items from.