Make it so that when your character runs over a weapon, that the weapon gets pinned to the correct image point in their hand. Set the name of the weapon object or it's UID in an instance variable of the player. When you run over another weapon, unpin the object (grab it's name or UID from the instance variable), and pick up the new weapon, rinse, repeat...
For a simple base for this you can check my wall jump tutorial where I have a section that enables the wall jump via picking up a powerup. You could use a similar setup for your weapons. The link is in my signature.
Hope this helps...