Как изменить цвет UI Image в скрипте?

Графический интерфейс пользователя

Как изменить цвет UI Image в скрипте?

Сообщение DimaJoke 13 авг 2018, 19:55

Здрасте.
Есть bool переменная, если она == true то нужно изменить цвет Image.
P.S.
У меня скрипт весит именно на самом image может дело в этом?

Вот мой скрипт:
Синтаксис:
Используется csharp
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class Script : MonoBehaviour {
public bool testBool;

void start()
{

}

void update()
{
if(testBool == true)
{
         GetComponent<Image>().color = new Color(79/255.0f, 165/255.0f, 63/255.0f);
}
}

}
 
Что бы повзрослеть, человек должен преодолеть ошибки юности.

Поэтому я снова здесь..
Аватара пользователя
DimaJoke
UNITрон
 
Сообщения: 293
Зарегистрирован: 12 авг 2018, 18:59
Откуда: Ульяновск
  • Сайт

Re: Как изменить цвет UI Image в скрипте?

Сообщение 1max1 13 авг 2018, 20:30

апдейт и старт методы с большой буквы вообще-то
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Как изменить цвет UI Image в скрипте?

Сообщение MSA 13 сен 2018, 06:49

DimaJoke писал(а):
Синтаксис:
Используется csharp
public bool testBool;

void update()
{
if(testBool == true)
{
         GetComponent<Image>().color = new Color(79/255.0f, 165/255.0f, 63/255.0f);
}
 

Вообще надо сначала создать вектор типа Vector4, а потом уже плюсовать его значение к цвету. В подсказках MonoDevelop прямо пишет, что задавать значение color нельзя, оно возвращаемое.

Поэтому сначала объявите переменную.
Потом задайте ей значение, не забыв добавить альфу (в данном случае последнее значение я задал как 1, потому что вектор4 - это RGBA).
И далее уже в виде вектора кидайте в свойство компонента. Примерно так:
Синтаксис:
Используется csharp
private Vector4 Color;

Color = new Vector4(79/255.0f, 165/255.0f, 63/255.0f, 1);

gameObject.GetComponent<Image>().color = Color;
 
MSA
UNец
 
Сообщения: 12
Зарегистрирован: 24 фев 2018, 23:21

Re: Как изменить цвет UI Image в скрипте?

Сообщение MSA 14 сен 2018, 00:48

Я ошибся, у вас рабочая конструкция, вопрос был лишь в незаданном альфа канале.
Сейчас добавлял в собственных скриптах подобную функцию и поробовал
просто присвоить через new Color - работает и без переменной.
MSA
UNец
 
Сообщения: 12
Зарегистрирован: 24 фев 2018, 23:21


Вернуться в uGUI

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1