![見出し画像](https://assets.st-note.com/production/uploads/images/139576442/rectangle_large_type_2_48cb2daebe8a9287d066592eac9a6f70.png?width=800)
テキストを下から上にスクロールさせるボタンのコード
ユニティで速読アプリ作ろうと思って試作中。
AIに相談しながらボタン押すとスクロール
もう一度押すと止まるようにコード作ったのでめも。
流用できるようにボタンにオンクリックで使う方式にしています。
using UnityEngine;
using UnityEngine.UI;
using TMPro;
using Vector2 = UnityEngine.Vector2;
using System.Collections;
public class ScrollText : MonoBehaviour
{
public Button yourButton; // ボタンをInspectorからアサインします
public TMP_Text yourText; // スクロールさせたいテキストをInspectorからアサインします
public float scrollSpeed = 0.5f; // スクロール速度を設定します
private bool isScrolling = false; // スクロール中かどうかを判断するフラグ
private Coroutine scrollCoroutine; // スクロールのCoroutineを保持します
public void ToggleScroll()
{
// isScrollingフラグを反転させます(trueならfalseに、falseならtrueに)
isScrolling = !isScrolling;
// スクロールを開始または停止します
if (isScrolling)
{
// 新しいCoroutineを開始し、そのインスタンスを保持します
scrollCoroutine = StartCoroutine(ScrollCoroutine());
}
else
{
// 保持しているCoroutineを停止します
if (scrollCoroutine != null)
{
StopCoroutine(scrollCoroutine);
}
}
}
private IEnumerator ScrollCoroutine()
{
while (isScrolling)
{
// テキストの位置をスクロール速度に応じて変更します
yourText.rectTransform.anchoredPosition += new Vector2(0, scrollSpeed);
yield return null;
}
}
}
using Vector2 = UnityEngine.Vector2;
は2を3にしたら3D的に使えるんじゃないかなあ。
この記事が気に入ったらサポートをしてみませんか?