You could take legal action; I don't know whether you would get anything. You would have to show that the roofers were negligent in throwing the nails onto the ground. A court may well decide that you were contributorily negligent if you knew the nails were there and did nothing about them. In that event, it would reduce your award by the proportionate amount of your negligence.
What is stopping you from sweeping the patio now?