Есть ли способ передать буквальное значение переменной при использовании действий C#? [дубликат]C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Есть ли способ передать буквальное значение переменной при использовании действий C#? [дубликат]

Сообщение Anonymous »

У меня есть действие внутри цикла.

Код: Выделить всё

        int count = 0;
foreach(OMD i in settings)
{
if (i.type == OMDSetting.toggle) {
Components.Register(toggle, EventTriggerType.PointerClick, () => OnToggleUp(toggle, count));
y -= 60;
}
count++;
}
И когда я запускаю действие.

Код: Выделить всё

    public static void OnToggleUp(GameObject toggle, int index)
{
OMD s = settings[index];
s.b = toggle.GetComponent().isOn;
settings[index] = s;
}
Проблема в том, что переменная count, отправляемая вместе с действием, никогда не дает правильный индекс. Он всегда отправляет значение, какое бы оно ни было, после завершения цикла.
Есть ли в C# способ обойти это?

Подробнее здесь: https://stackoverflow.com/questions/791 ... -a-variabl
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»