


下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
【移動應用開發技術】android中如何解決基于界面適配華為手機虛擬按鍵的問題
一、概述/upload/information/20200623/125/124437.jpg二、布局由于虛擬按鍵導致導航欄頂上去的解決方法if
(AndroidWorkaround.checkDeviceHasNavigationBar(this))
{
AndroidWorkaround.assistActivity(findViewById(android.R.id.content));
}/**
*
解決底部屏幕按鍵適配
*
Created
by
Mercury
on
2016/10/25.
*/
public
class
AndroidWorkaround
{
public
static
void
assistActivity(View
content)
{
new
AndroidWorkaround(content);
}
private
View
mChildOfContent;
private
int
usableHeightPrevious;
private
ViewGroup.LayoutParams
frameLayoutParams;
private
AndroidWorkaround(View
content)
{
mChildOfContent
=
content;
mChildOfContent.getViewTreeObserver().addOnGlobalLayoutListener(new
ViewTreeObserver.OnGlobalLayoutListener()
{
public
void
onGlobalLayout()
{
possiblyResizeChildOfContent();
}
});
frameLayoutParams
=
mChildOfContent.getLayoutParams();
}
private
void
possiblyResizeChildOfContent()
{
int
usableHeightNow
=
computeUsableHeight();
if
(usableHeightNow
!=
usableHeightPrevious)
{
frameLayoutParams.height
=
usableHeightNow;
mChildOfContent.requestLayout();
usableHeightPrevious
=
usableHeightNow;
}
}
private
int
computeUsableHeight()
{
Rect
r
=
new
Rect();
mChildOfContent.getWindowVisibleDisplayFrame(r);
return
(r.bottom);
}
public
static
boolean
checkDeviceHasNavigationBar(Context
context)
{
boolean
hasNavigationBar
=
false;
Resources
rs
=
context.getResources();
int
id
=
rs.getIdentifier("config_showNavigationBar",
"bool",
"android");
if
(id
>
0)
{
hasNavigationBar
=
rs.getBoolean(id);
}
try
{
Class
systemPropertiesClass
=
Class.forName("android.os.SystemProperties");
Method
m
=
systemPropertiesClass.getMethod("get",
String.class);
String
navBarOverride
=
(String)
m.invoke(systemPropertiesClass,
"qemu.hw.mainkeys");
if
("1".equals(navBarOverride))
{
hasNavigationBar
=
false;
}
else
if
("0".equals(navBarOverride))
{
hasNavigationBar
=
true;
}
}
catch
(Exception
e)
{
}
return
hasNavigationBar
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 西寧市重點中學2025年化學高二第二學期期末聯考試題含解析
- 新疆烏魯木齊七十中2025屆數學高二下期末聯考試題含解析
- 浙江省寧波效實中學2024-2025學年物理高二第二學期期末達標檢測模擬試題含解析
- 知名餐飲品牌連鎖店轉讓及經營管理合同
- 餐飲配送與物流配送中心建設合同
- 車輛物流運輸合同車輛安全檢查標準
- 住宅小區集中供暖設施建設與運營合同
- 中國煤炭地質總局第二勘探局招聘考試真題2024
- 遂寧市市屬事業單位招聘工作人員考試真題2024
- 吉安縣教育體育局工作人員招聘考試真題2024
- 聯合協議書模板
- 廠房租賃合同2
- 人教版高中生物必修二復習提綱
- 社區矯正人員心理健康講座模板課件
- 江蘇蘇州昆山2022-2023學年小升初考試數學試卷含答案
- 掘進機行走部減速器設計畢業設計論文
- 學校少先隊隊前知識闖關活動方案
- 西方合唱發展史課件
- 基本安全之個人求生新版課件
- 自然資源保護法案例分析
- 產品質量法企業培訓講座課件
評論
0/150
提交評論