Unity 2017.2.1及以后
Screen.safeArea会返回移动平台安全区的Rect。
参考代码:
public class SafeArea : MonoBehaviour
{
float safeArea_left;
// Start is called before the first frame update
void Start()
{
safeArea_left = UnityEngine.Screen.safeArea.left;
}
// Update is called once per frame
void Update()
{
if (Screen.orientation ==UnityEngine.ScreenOrientation.LandscapeLeft)
{
gameObject.GetComponent<RectTransform>().anchoredPosition = new Vector2(safeArea_left, gameObject.GetComponent<RectTransform>().anchoredPosition.y);
}
else
{
gameObject.GetComponent<RectTransform>().anchoredPosition = new Vector2(0, gameObject.GetComponent<RectTransform>().anchoredPosition.y);
}
}
}
上述代码是为了实现如下效果:
当用户向左横握手机,屏幕左侧图片吸附在刘海处;当用户向右横握手机,屏幕左侧图片吸附在手机底部。
借鉴链接:
https://zhuanlan.zhihu.com/p/124246847