? ,,

亚洲午夜精品视频_国产黄大片_网站av_99亚洲伊人久久精品影院红桃_91av入口_永久免费av片在线观看全网站

聯系我們

給我們留言

聯系我們

地址:福建省晉江市青陽街道洪山路國際工業設計園納金網

郵箱:info@narkii.com

電話:0595-82682267

(周一到周五, 周六周日休息)

當前位置:主頁 > 3D教程 > 圖文教程

UE4 UMG設置組件自適應居中或靠邊

來源: 52vr | 責任編輯:傳說的落葉 | 發布時間: 2019-06-11 08:30 | 瀏覽量:

比如你的UI中有些組件需要居中顯示,有些需要始終在右上角并且與上邊框和右邊框保持固定的距離等等,對于這種需要動態適應屏幕分辨率的UI組件,有兩種設置方式:

1,直接編輯組件的屬性Anchors


 

 [UE4]UMG設置組件自適應居中或靠邊

 

 

2,代碼控制

Cpp代碼
  1. ULoginWidget* LoginUI = NULL;   //創建UI的邏輯省略  
  2.   
  3. if (UImage* backImg = Cast<UImage>(LoginUI->GetWidgetFromName("ImgBackground")))  
  4. {  
  5.     //獲取屏幕大小和中心點  
  6.     const FVector2D ViewportSize = FVector2D(GEngine->GameViewport->Viewport->GetSizeXY());  
  7.     const FVector2D  ViewportCenter = FVector2D(ViewportSize.X / 2, ViewportSize.Y / 2);  
  8.   
  9.     //假設背景圖片的大小原尺寸大小是1920x1080,下面是通過高寬比來計算當前分辨率下的位置  
  10.     int imgWidget = 1920 * ViewportSize.Y / 1080;  
  11.     int posX = ViewportCenter.X - imgWidget / 2;  
  12.   
  13.     //設置背景圖片的相對X、Y坐標,注意:這里假設Anchors屬性默認的,即X、Y相對屏幕左上方頂點位置  
  14.     backImg->SetRenderTranslation(FVector2D(posX, 0));  
  15. }  

如果需要居中的UI組件很多,可以將居中的UI放在一個容器里,然后只對這一個容器進行居中即可。

這里假設直接將RootWidget居中:

Cpp代碼
  1. LoginUI->GetRootWidget()->SetRenderTranslation(FVector2D(X, Y));  

 

另外,通過代碼設置比例,需要在代碼中考慮當前設備的分辨率,如果不想考慮,將屏幕尺寸設成固定值:

 

[UE4]UMG設置組件自適應居中或靠邊


相關文章
網友評論

您需要登錄后才可以發帖 登錄 | 立即注冊

關閉

全部評論:0條

推薦
熱門
主站蜘蛛池模板: 亚洲成a人片在线观看无码 亚洲成a人片在线观看无码专区 | 亚洲欧美综合精品成人导航 | 国产精品美女久久久网av | 东京热无码av一区二区 | 99热在线观看精品 | 小明成人永久免费观看视频 | 欧美一级艳片视频免费观看 | 亚洲欧美在线综合一区二区三区 | 2017天天鲁夜夜夜夜夜夜夜 | 久久人妻少妇嫩草av蜜桃 | 久久99精品亚洲热综合 | 精品无人区一区二区三区a 精品午夜福利1000在线观看 | 99re66在线观看精品免费 | 亚洲av综合色区无码二区爱av | 成人免费无码大片a毛片 | 欧美亚洲啪啪 | 久久国产精品99久久小说 | 明星性猛交ⅹxxx乱大交 | 暖暖 在线 日本 免费 中文 | 色射影院| 4hu四虎永久免在线视看 | 免费看欧美毛片大片免费看 | 中国女人内谢69xxxxxa片 | 99精品电影一区二区免费看 | 高潮又爽又无遮挡又免费 | 久久久青草青青亚洲国产免观 | 天天天天天干 | 深夜福利影视 | 国产综合内射日韩久 | 国产欧美日本在线观看 | 东北老女人高潮大喊舒服死了 | 国产免费又爽又色又粗视频 | 亚洲成a人片在线观看 欧美 | 色射视频 | 国产精品久久人妻互换 | 国产精品98视频全部国产 | 免费99| 亚洲综合第一区 | 亚洲暴爽av人人爽日日碰 | 日韩欧美国产亚洲 | 日韩精品欧美激情国产一区 |