InputField增加滑动条效果
类似图中效果

- 添加一个InputField组件

2 .添加一个Scrollbar放在InputField内

调整属性 
-
调整InputFiled组件属性
需要将Scrollbal添加到InputField的scrollbar上

-
然后根据美术需求将位置进行调整,记得InputFiled下的Text不要被Scrollbar挡住了,然后写脚本监听InputFiled的输入事件onValueChanged,将内容更新即可
此时的scrollBar已经可以跟随文本框内容变化了。但是美术希望,文本没有超出这个输入框的时候,不展示ScrollBar。
那我们将ScrollBar也获取到,并控制就行了
自行实验一下,在文本内容变化的时候,scrollbar的属性value size的变化
value在0-1范围内,0的时候在顶部,1在底部
size则是滑动块的大小,滑动块越小,当然输入框内容超出的越多
所以可以根据size的大小,控制滑动块是否展示。

主要代码:
private void HandleInput(string newValue)
{
descInput.text = newValue.Replace(" ", "\u00A0");
CtrlShowScrollBar(descInput.text);
}
private void CtrlShowScrollBar(string value)
{
float v = verticlScrollbar.size;
// 滑动条的控制
verticlScrollbar.gameObject.SetActive(v < 1f);
// 无滑动条时辅助文本展示到最上层
if (v >= 1 && decsText.offsetMax != Vector2.zero)
{
// left bottom
decsText.offsetMin = new Vector2(0,0);
// right top
decsText.offsetMax = new Vector2(0,0);
}
}
还有通过ScrollView的方法也可以实现,链接文章是可行的,还附有源码package包可以下载。https://www.jianshu.com/p/0aa6691e05b3







![[C++初阶]栈和队列_优先级队列的模拟实现 deque类 的理解](https://img-blog.csdnimg.cn/e11affaba9a6468da59f9cd57c621309.png)







![P1039 [NOIP2003 提高组] 侦探推理](https://img-blog.csdnimg.cn/img_convert/a6e0b45b676d8b20ba3321a37e64fb7d.png)



