Nobody prevented you from stating your opinion regarding guns. THAT is what the First Amendment means. However, you still have to deal with people's reactions to what you say. The First Amendment also means I can say whatever I want about what it is you said. There's nothing wrong with Americans saying they want a non-US citizen who speaks ill of the freedom this country affords us - indeed, someone like you who wishes to curtail our freedoms - to leave the country.
If you're afraid of the so-called "gun culture" in America then perhaps you should move back to England where guns are outlawed....and gun crime is rising.