画像の背景を消してみる⑤ 細かい修正:Buttonのtextの位置移動(録音中・・・の文字)
細かい修正をしていきます。
まず、録音ボタンを、画像と共に動かすようにしたところ
録音中・・・
の文字だけが、置いて行かれていることに気付きました。
これを修正します。
まず、録音ボタンのtextの位置を取得しないといけない気がします。
・・・
できました。
白字で見にくいですが、ついてきてくれています。
背景を消しても付いてきます
少し試行錯誤しました。
元々
にアタッチしているplay.csで、このテキストの表示・非表示を扱っていました。
一番下の↓rokuonshitemasu1がそれ。
text自体はここにあります。
なので、play.csの中に記述していきました。
ですが、スタート時にどうしても
標準の位置(画像をどこにも移動させていないときの位置)に
文字が表示され、画像とはズレてしまいました。
なので、play.csに書くのはやめて、
image1.csに書きました。
クラスの中に以下を記述。
//録音中・・・表示非表示に必要
[SerializeField] Text rokuonshitemasu1;
なぜ
[SerializeField]なのかは、恐らくplay.csに書くために、
この時調べた参考サイトをもとにコピペしたのだと思います。
play.csでは、こう記述されていたので、
image1.csでも、このまま使っていこうと思います。
Hierarchyからinspectorにアタッチ
(一番下)
内容は録音ボタンのときとほぼ同じです。
void OnMouseDrag()
{
//移動したマウスの座標を代入
var currentScreenPoint = new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z);
//移動したマウス座標をワールド座標へ変換し,先ほど求めた offset を適用してアタッチしたオブジェクトの座標に直す
var currentPosition = Camera.main.ScreenToWorldPoint(currentScreenPoint) + this.offset;
//セットする
transform.position = currentPosition;
/////////////////////////////録音ボタンの位置関係/////OnMouseDragのとこと、posihenkoの関数のとこ//Startのとこ//////////////////////////////////////
//録音ボタンの位置も変更
Button.transform.position = new Vector3(transform.position.x, transform.position.y -70, -50);
//録音してます...の位置も変更
rokuonshitemasu1.transform.position = new Vector3(transform.position.x + 50, transform.position.y - 50, -50);
back1Cu.GetComponent<play>().Posihenkopl();
}
・・・・
・・・・
public void Posihenkoimage1()
{
this.transform.position = pl.transform.position;
/////////////////////////////録音ボタンの位置関係/////OnMouseDragのとこと、posihenkoの関数のとこ//Startのとこ//////////////////////////////////////
Button.transform.position = new Vector3(transform.position.x, transform.position.y - 70, -50);
//録音してます...の位置も変更
rokuonshitemasu1.transform.position = new Vector3(transform.position.x + 50, transform.position.y - 50, -50);
}
・・・
private void Start()
{
・・・
//録音してます...の位置も変更
rokuonshitemasu1.transform.position = new Vector3(xPosi + 50, yPosi - 50, -50);
}
赤字が追加です。
これでスタート時も、画像のところに文字が表示されました。