unity获取inputfield的值来改变物体质量

我在做一个用unity模拟高中摩擦力实验,想在inputfield里输入值来改变物体的质量,但是我现在不知道怎么获取输入值,也不知道怎么把值赋给物体来改变物体质量,找了一天了都没找到方法。搞不来啊
以下是我的两个尝试,都不行,大 神帮帮忙呗,谢谢啦
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using System;
public class qualityinput : MonoBehaviour
{
    InputField input1;
    void Start()
    {
        //input1 = transform.GetComponent<InputField>();
        input1 = GameObject.Find("Canvas/quality").GetComponent<InputField>();
    }
    // Update is called once per frame
    void Update()
    {
        //input1.onSubmit.AddListener(OnSubmit);
    }
    public void output1()
    {
        float Q = 0;
        float A = Convert.ToSingle(input1.text);
        print("输入l :" + A);
    }
}


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using System;
public class qualityinput : MonoBehaviour
{
    public GameObject input1;
    void Start()
    {
        input1 = GameObject.Find("quality");
        input1.gameObject.GetComponent<InputField>();

    }
    void Update()
    {
        string a;
        a = input1.text;
        Debug.Log(a);
    }
}

img

img

using UnityEngine;
using UnityEngine.UI;

public class Example : MonoBehaviour
{
    InputField input1;
    void Start()
    {
        //获取输入框
        input1 = GameObject.Find("Canvas/quality").GetComponent<InputField>();
        //给输入框添加结束编辑监听事件
        input1.onEndEdit.AddListener(s =>
        {
            //获取到的输入框的值为string类型,将其转换为float类型
            float.TryParse(s, out float v);
            //TODO 将质量v赋值给物体
        });
    }
}

    /// <summary>
    /// 每次输入的数字
    /// </summary>
    float m_Quality;
    /// <summary>
    /// 要改变质量的Rigidbody拖到这里
    /// </summary>
    public Rigidbody m_Rigidbody;

    private void Start()
    {
        GameObject.Find("Canvas").transform.Find("quality").GetComponent<InputField>().onEndEdit.AddListener(InputQuality);
    }
    private void InputQuality(string str)
    {
        //将输入的string转为float
        m_Quality = float.Parse(str);
        //赋予质量
        m_Rigidbody.mass = m_Quality;
    }