UI Tweening not displaying same position across different screen resolutions

You can write your topic however you want, but you need to answer these questions:

  1. What do you want to achieve? I’d like the image label to display the same position on every device

  2. What is the issue? The bomb does not display at the same position on every device (video attached below)

  3. What solutions have you tried so far? I’ve tried finding other solutions in the devforum, I’ve added a UIAspectRatioConstraint to the image label, I’ve set its anchor point and position to 0.5,0,5 (scale) and nothing worked.

local RF = game:GetService("ReplicatedFirst")
local Player = game:GetService("Players").LocalPlayer
local ContentProvider = game:GetService("ContentProvider")
local TS = game:GetService("TweenService")

local PlayerGui = Player:WaitForChild("PlayerGui")

local LoadingScreen = PlayerGui:WaitForChild("Menu"):WaitForChild("LoadingScreen")

local Bomb = LoadingScreen:WaitForChild("Bomb")
local bombRotate = TS:Create(Bomb, TweenInfo.new(2, Enum.EasingStyle.Quart, Enum.EasingDirection.InOut, -1, false), {Rotation = 360})
bombRotate:Play()
local assetText = LoadingScreen:WaitForChild("Assets")

local MainMenu = PlayerGui:WaitForChild("Menu"):WaitForChild("MenuFrame"):WaitForChild("MainMenu")

local Play = MainMenu:WaitForChild("Play")
local Credits = MainMenu:WaitForChild("Credits")
local Settings = MainMenu:WaitForChild("Settings")
local donateText = MainMenu:WaitForChild("DonateReminder")

RF:RemoveDefaultLoadingScreen()

--loading screen functionality
	if i== #Assets then
		print("done!")
		bombRotate:Cancel()
	 if Bomb.Rotation ~= 0 then
			TS:Create(Bomb, TweenInfo.new(2, Enum.EasingStyle.Quart, Enum.EasingDirection.InOut), {Rotation = 360}):Play()
			wait(1)
			TS:Create(Bomb, TweenInfo.new(1, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out), {Position = UDim2.fromScale(0.214,0.307)}):Play()
			wait(1)
			TS:Create(LoadingScreen, TweenInfo.new(1), {BackgroundTransparency = 1}):Play()
			TS:Create(LoadingScreen.Parent.MenuFrame.MainMenu.utcast, TweenInfo.new(1), {ImageTransparency = 0}):Play()
			TS:Create(assetText, TweenInfo.new(1), {TextTransparency = 1}):Play()
			wait(2)
			TS:Create(Credits, TweenInfo.new(0.3), {Position = UDim2.fromScale(0.159,0.721)}):Play()
			TS:Create(Play, TweenInfo.new(0.3), {Position = UDim2.fromScale(0.159,0.478)}):Play()
			TS:Create(Settings, TweenInfo.new(0.3), {Position = UDim2.fromScale(0.159,0.606)}):Play()
			TS:Create(donateText, TweenInfo.new(0.3), {TextTransparency = 0}):Play()
			wait(0.5)
			TS:Create(Play.TextLabel, TweenInfo.new(0.2), {TextTransparency = 0}):Play()
			TS:Create(Credits.TextLabel, TweenInfo.new(0.2), {TextTransparency = 0}):Play()
			TS:Create(Settings.TextLabel, TweenInfo.new(0.2), {TextTransparency = 0}):Play()
		wait(10)
		
		end
	end
end

any help is appreciated! (also sorry if this is in the wrong category I didn’t know what this would fall under)

1 Like

You can put the image label inside the title text, and set the size to 1,0,1,0 and the add a aspect ratio constraint in it. It will make the image label constant size to the text. Change the anchor point to be 1, 0.5 and then just drag the image to the position you want it.

In the text for the title, just make sure that the text X alignment is left.

Reply if you have any questions or it doesn’t make sense

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.