A gunman fired at least 50 shots in a parking lot outside the Fashion Island mall in Newport Beach, 35 miles (56 km) south of Los Angeles, on Saturday, causing panic among the shoppers.
No one was injured during the shooting, but one person sustained minor injuries while escaping the scene, police said.
Shortly after the incident, police rushed to the area, arresting the shooter, identified as 42-year-old Marcos Sarinana, without any struggle.
“A male was shooting a weapon in the air and at the ground, standing by a vehicle,” said Newport Beach police spokeswoman Kathy Lowe.
The incident came as many across the US are on high alert following the recent spate of mass shootings.
On Saturday, a gunman opened fire at a hospital in the US state of Alabama, injuring a police officer and two other people before a policeman shot and killed him.
Earlier on Friday, a total of 28 people were killed in a shooting spree in Connecticut. Twenty-seven people – 20 students, 6 adult victims, and the shooter, who killed himself – were killed at the Sandy Hook Elementary School in Newtown. Earlier in the day, the assailant killed his mother in another location.
Later in the day, about 100 protesters gathered outside the White House demanding stricter gun control in the United States.
The Connecticut massacre came just two days after another gunman opened fire at a shopping mall in the US state of Oregon, killing two people and injuring several others.
An online petition has urged the US government to produce legislation that limits access to guns. The petition had more than 25,000 signatures just hours after its inception.