- Home /
Changing a UI image Based on Platform
Can anyone help me solve a problem with a script for multiplatform
I have a start menu that has a UI Image in Unity 5. The Image is supposed to change to change based on the platform in Use. the image is a press start sprite with the following button to match that platform
Here is an example
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
//Public class
public class PlatformImage : MonoBehaviour
{
//Request For Platform Specific Images
//Desktops/Laptops
public Sprite PC; //Windows or Linux
//Consoles
public Sprite PS4; //Playstation 4
public Sprite XB1; //Xbox One
// Use this for initialization
void Start ()
{
//Windows
#if UNITY_STANDALONE_WIN
this.GetComponent<UnityEngine.UI.Image>();
//PS4
#elif UNITY_PS4
this.GetComponent<UnityEngine>UI.Image>("PS4");
#endif
}
}
So what is happening, I am trying to figure out how to assign the proper sprite/Texture based on the platform the game is running on. Also the "#if UNITY_PS4" grays out my code under it as if it was commented out. What am I doing wrong here? I would like to solve this to save time by using one build for all systems and use certain code based on the system that is running the game.
Your answer
![](https://koobas.hobune.stream/wayback/20220613191930im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Script problem 1 Answer
Resources.LoadAll Generates Cast exception Error 2 Answers
Server side c# scripts loads at runtime 0 Answers
If two PlayerPrefs are on? 2 Answers
UI Buttons to work continuously when pressed and held for sometime 1 Answer