UI Image not firing function constantly when held down.

I’m creating a breakout style game and I have a player padde object with the following code:

public class Player : MonoBehaviour
{
	public Rigidbody2D rb;
	public float speed;
	public float maxX;

	void Awake ()
	{
		
	}

	void Start ()
	{
			
	}

	public void MoveLeft()
	{
		rb.velocity = new Vector2(-speed,0);
		Debug.Log ("Moving Left");
	}

	public void MoveRight()
	{
		rb.velocity = new Vector2(speed,0);
		Debug.Log ("Moving Right");
	}

	public void Stop()
	{
		rb.velocity = Vector2.zero;
		Debug.Log ("Stopped");
	}

	void FixedUpdate ()
	{
		float horizAxis = Input.GetAxis ("Horizontal");

		if (horizAxis == 0)
		{
			Stop();
		}

		if (horizAxis < 0)
		{
			MoveLeft();
		}

		if (horizAxis > 0)
		{
			MoveRight();
		}

		Vector3 pos = transform.position;
		pos.x = Mathf.Clamp (pos.x, -maxX, maxX);
		transform.position = pos;

	}

I have set up 2 UI images on the canvas and pointed them towards this script (The MoveLeft() and MoveRight() functions. According to the debug log, they are firing but the player paddle does not move like it does when I use the left and right arrow keys.

How do I set this up correctly so that my custom buttons fire these functions correctly? I suspect it’s because I’m using a PointerDown (Left() and Right()) and PointerUp (Stop()). Does this means it’s happening only once and not acting like the button (image) is being held down?

Driving me nuts.

? Anybody?