- Home /
Unity 4.6 CanvasScaler: access "Match Width or Height" ratio from UnityScript?
What goes in the blank? I can't find any docs on this value:
GameObject.Find("Canvas").GetComponent(UI.CanvasScaler).________ = 0;
(I'm using this to make the UI match height on some display shapes, but width on others. JavaScript/UnityScript.)
Docs for CanvasScaler.ScreenMatchMode.MatchWidthOrHeight mention "Scale the canvas area with the width as reference, the height as reference, or something in between," but how do I control the "something" value (a slider called "Match" in the Inspector) via code?
Thanks!
Answer by DoTA_KAMIKADzE · May 14, 2015 at 08:08 PM
Why don't you use Expand or Shrink instead(sounds like you want that)? Anyway:
yourCanvasScaler.uiScaleMode = CanvasScaler.ScaleMode.ScaleWithScreenSize;//if not set through Inspector
yourCanvasScaler.screenMatchMode = CanvasScaler.ScreenMatchMode.MatchWidthOrHeight;//if not set through Inspector
yourCanvasScaler.matchWidthOrHeight = your float from 0 to 1
Thanks! Just what I needed.
(I need it because I want to change that value and match width just in one very specific scenario, relating to 3.5" iPhone screens. For everyone else, matching height is needed, having to do with the UI being built on the fly out of circles. If only Apple would let us submit apps that require a 4" screen! But requiring $$anonymous$$etal--and leaving out all those 5/5C owners--seems to be the only way to do that. Even requiring iOS 8 is not enough: the iPhone 4S runs 8.)
GameObject.Find("Canvas").GetComponent(UI.CanvasScaler).matchWidthOrHeight = 0;
Your answer
Follow this Question
Related Questions
Erase Images on Canvas Using UnityScript 0 Answers
function OnCollosionEnter problems 1 Answer
Updating UI Slider through another script 1 Answer
Changing the light color with sliders 1 Answer
Can I convert unityscript to boo? 0 Answers