バックログが空の時、スクロールバーを「Auto Hide」にしても非表示にならない

1,041 views
Skip to first unread message

nunu

unread,
Jan 16, 2022, 12:50:21 PM1/16/22
to 宴ユーザーグループ
・宴のバージョン:3.11.2
・Unityのバージョン:2021.1.20f1
・OSバージョン:Windows10
・Unityの習熟度:宴のSendMessageは使えます

お世話になっております。
バックログなど「UguiHorizontal/VerticalAlignGroup」を使用しているUIにおいての、スクロールバーに関するご報告です。

バックログに1つもログ(台詞)が入っていない状態だと、「ScrollRect」で「Auto Hide」を設定してもスクロールバーが表示されっぱなしになる現象を確認しています。

「UguiHorizontal/VerticalAlignGroup」で「isAutoResize」にチェックを入れた時、スクロールエリアの中身が空だとリサイズが行われないのが原因のようです。
「バックログの中身が1つだけ」などの時は、リサイズが行われるため「Auto Hide」でスクロールバーが自動的に非表示になります。


より支障が出ているケースがありまして、
カスタムしたUIについてで恐縮なのですが「選択肢にスクロールバーをつけたい」場合です。

スクロール形式の選択肢表示時にスクロールバーを表示できた所までは良かったのですが、
選択肢をクリアした後、「スクロール形式の選択肢を使わず、自由に配置した選択肢のみを使用する」場面になってもスクロールバーが表示されっぱなしになってしまいます。


こちら、仕様であればそのようにご回答いただければと思います。
お手数をおかけし恐れ入りますが、ご確認いただけますと幸いです。

マッドネスラボ

unread,
Jan 16, 2022, 4:13:21 PM1/16/22
to 宴ユーザーグループ
確認したところ、原因が二つありました。

1 UguiListViewというコンポーネントで、isStopScroolWithAllInnnerがtrueの場合は、
  「アイテムがすべて範囲内にある場合は、スクロール機能を切る」としているのですが、
  スクロール機能を切ってしまうと、AutoHideでスクロールバーを自動で非表示にするということはできなくなります。
  なので、UguiListViewというコンポーネントで、isStopScroolWithAllInnnerをfalseにする必要があります。
  ただ、その場合は、スクロールが必要ない状態でもドラッグなどで選択肢などが動いてしまうと思います。
  ss_0137.png

2 スクロールエリアの中身が空だとリサイズが行われない  
      これは宴のプログラムがあまり良くない動作なので、空でもリサイズされるように修正しました。
  添付のパッケージファイルを適用してください。

  必要になることはないとは思うのですが、一応互換性のために・・・
   Content以下にある UguiHorizontalAlignGroupに「Reposition Zero Content」というのが追加されています。
   これをfalseにすれば、元の通りに中身が空の場合はリサイズしないように動作するようにしました。デフォルトではtrueです。    
  ss_0136.png




2022年1月17日月曜日 2:50:21 UTC+9 nunu:
FixAlignGroup.unitypackage

nunu

unread,
Jan 17, 2022, 3:31:11 AM1/17/22
to 宴ユーザーグループ
早速ご対応いただき、大変恐れ入ります。
添付いただいたUnityPackageを適用したところ、スクロールバーが自動非表示されるようになり、カスタム選択肢部分の問題も無事解消されました。
誠にありがとうございました。
Reply all
Reply to author
Forward
0 new messages