[英]Android live wallpaper service - get screen rotation
我嘗試為Android制作動態壁紙,但是我無法進行屏幕旋轉,因為LWP-這是一項服務,而不是活動。 我需要整數值(0/90/180/270),而不是方向(風景/肖像),例如如果我叫這樣的話:
((Activity) context).getResources().getConfiguration().orientation;
有可能的? 我嘗試了許多方法並閱讀了許多文章,但是我做不到,也找不到有用的信息。
謝謝!
所以,我找到了解決方案:)
public int getRotation() {
int orientation = ((WindowManager) context.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay().getOrientation();
switch (orientation) {
case Surface.ROTATION_90: return 90;
case Surface.ROTATION_180: return 180;
case Surface.ROTATION_270: return 270;
default: return 0;
}
}
但就我而言,這有點問題,不知道為什么:如果將設備放置在0度位置(人像方向)並旋轉到180度,則不會檢測到任何東西,或者從90到270都不會被檢測到。 但是,如果您將設備從0旋轉到90或270,或者從90旋轉到180和0,依此類推-一切都很好(方向不同)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.