President Trump on Sunday vowed to do everything he can to protect the United States and its allies "from a vile enemy that has waged war on innocent life."

Hours after facing criticism for his tweets on the London terror attack, Trump said the U.S. will do everything in its power to "bring those that are guilty to justice."

"This bloodshed must end. This bloodshed will end. As president I will do what is necessary to prevent this threat from spreading to our shores," Trump said during a speech at the Ford's Theatre Annual Gala.

"America sends our thoughts and prayers," he added.

Trump criticized London Mayor Sadiq Khan earlier Sunday over his response to the attacks, warning that the attacks will "only get worse" if we don't "stop being politically correct."

"At least 7 dead and 48 wounded in terror attack and Mayor of London says there is ‘no reason to be alarmed!'" Trump tweeted, taking the mayor's BBC interview out of context.

"We must stop being politically correct and get down to the business of security for our people. If we don't get smart it will only get worse," he added.

Trump also called for the courts to uphold his controversial travel ban after news broke of the attack.

"We need to be smart, vigilant and tough," Trump tweeted Saturday. "We need the courts to give us back our rights. We need the Travel Ban as an extra level of safety!"