Unity 中Glist个数变化时,刷新Glist的问题

图一所示做的事情是第一次渲染列表,工作正常,代码如下如
var featuresCount = menu[config_key]["features"].Length;
if (featuresCount > 0) {
glists["list_features"].itemRenderer = RenderFeatures;
glists["list_features"].numItems = featuresCount;
glists["list_features"].ResizeToFit (featuresCount > feature_limit?feature_limit : featuresCount);


图二是做的事情是刷新GList,但是失败了,代码如下
private void RefreshMenu () {
glists["list_features"].ClearSelection();
var featuresCount = menu[config_key]["features"].Length;
if (featuresCount > 0) {
glists["list_features"].numItems = featuresCount;
glists["list_features"].EnsureBoundsCorrect();
glists["list_features"].ResizeToFit(featuresCount);
}
}
图三是失败后Glist在Unity Scene中的显示
下面是渲染的代码
private void RenderFeatures (int index, GObject obj) {
var feature_key = menu[config_key]["features"][index];
var feature_value = string.Empty;
feature_abbr.TryGetValue (feature_key, out feature_value);

GButton btn = obj.asButton;
btn.title = feature_value;
btn.name = feature_key;
}
求帮助
Screen_Shot_2019-05-30_at_11.12_.20_am_.png Screen_Shot_2019-05-30_at_11.09_.40_am_.png Screen_Shot_2019-05-30_at_11.12_.39_am_.png
已邀请:

谷主

赞同来自:

虽然你很努力,但我仍然不知道你说的失败是指什么。其实你自己debug就行了,打断点到render函数。

XXFS - 90it

赞同来自:

失败指的显示效果不正常,
程序没有报错,render函数运行也正常
T_T

XXFS - 90it

赞同来自:

在显示不对的情况下,LIst的滑动功能正常,如图

XXFS - 90it

赞同来自:

通过设置列表的溢出选项,就可以正常显示了

要回复问题请先登录注册