Using IPointer Handler in if Unity_Android

Hey, so i have this tool tip system which when you hover over certain items it shows up, now in android there is no hover over so it doesnt show up. im trying to get it so if you hold down, so the pointer is down then it ill show up but when pointer up it cancels the show tool tip

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;

public class ToolTipTrigger : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler, IPointerDownHandler, IPointerUpHandler
{
    private static LTDescr delay;
    public string header;

    void Start()
    {
        header = this.gameObject.name;
    }
   
  

    public void OnPointerEnter(PointerEventData eventData)
    {
        LeanTween.delayedCall(0.2f, () =>
        {
            ToolTipSystem.Show(header);
        });
    }

    public void OnPointerExit(PointerEventData eventData)
    {
        ToolTipSystem.Hide();
        LeanTween.cancelAll();
       
    }
  
    public void OnPointerUp(PointerEventData eventData)
    {
        ToolTipSystem.Hide();
        LeanTween.cancelAll();
    }

#if UNITY_ANDROID
public void OnPointerDown(PointerEventData eventData)
    {
          LeanTween.delayedCall(0.2f, () =>
        {
            ToolTipSystem.Show(header);
        });
    }
#endif



}

this is the code at the moment but im getting an error saying the onpointerdown doesnt exist i think thats because while its in the if statement it doesn’t get the IPointerDownhandler thing at the top

Just move the if to inside of the function instead.