アンドロイドでは、アイコンを変更するというコンセプトが導入されていますが、まだサードパーティーのアプリを通じて行われています。アイコンを変更するのにWRITE_SECURE_SETTINGS
を使用するCustom Navigation Bar Android Oでは、明るいテーマや暗いテーマなどのバーの表示を変更できます。
解決策2は、より多くの助けになります。 ナビゲーションバーにpopup window
を作成することができます。希望するレイアウト、つまり3つ前のボタン、最近のアプリとホームボタンがあります。このようにして、戻るボタンアイコンをそれに応じて変更することができます。ポップアップウィンドウがナビゲーションバーと同じ高さになっていることを確認し、自宅や最近のアプリのための独自の機能を作成してfunction
のBottomSheetDialog
を閉じてそのポップアップウィンドウを閉じることができます。
以下は、ホームキーと最近のAppsのコードです。戻るボタンのためにあなた自身のアイコンで達成したいことをそれに応じて行います。
ホームボタン用。
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(startMain);
最新のアプリケーションの場合// BottomSheetDialogを閉じるのあなたのアイコンと機能を使用するBACKボタン については
Class serviceManagerClass = Class.forName("android.os.ServiceManager");
Method getService = serviceManagerClass.getMethod("getService", String.class);
IBinder retbinder = (IBinder) getService.invoke(serviceManagerClass, "statusbar");
Class statusBarClass = Class.forName(retbinder.getInterfaceDescriptor());
Object statusBarObject = statusBarClass.getClasses()[0].getMethod("asInterface", IBinder.class).invoke(null, new Object[] { retbinder });
Method clearAll = statusBarClass.getMethod("toggleRecentApps");
clearAll.setAccessible(true);
clearAll.invoke(statusBarObject);
。
adb
コマンドによって、あなたもそれを行うことができますnavigationBar
public static int getSoftButtonsBarSizePort(Activity activity) {
// getRealMetrics is only available with API 17 and +
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
DisplayMetrics metrics = new DisplayMetrics();
activity.getWindowManager().getDefaultDisplay().getMetrics(metrics);
int usableHeight = metrics.heightPixels;
activity.getWindowManager().getDefaultDisplay().getRealMetrics(metrics);
int realHeight = metrics.heightPixels;
if (realHeight > usableHeight)
return realHeight - usableHeight;
else
return 0;
}
return 0;
}
の高さを計算するための
それが台無しにできることを確認あなたのnavigationBar
、あなたがあなたの元navigationBar
を取り戻すことはできません。
私はそれが役に立ちそうです。
キーボードが開いているときだけ、矢印が表示されます。あなたはユースケースを持っていますか?それはちょうど欲望なのであれば、あなたが言うこともできるから* "私はホームボタンの代わりに8角形をしたい" *。あなたは悪い男の子であり、ルールを破ることを望んでいます。つまり、矢印がどのような場合に矢印が下になるかをユーザーが確かに知っており、そこに根本的な変更を導入したいと思っています。プラットフォーム全体で一貫しています。 – azizbekian
@azizbekian私は 'BottomDialog'を表示するときに、矢印ダウンを表示したいと思います。戻るボタンをクリックすると、「BottomDialog」は下にスライドすることによって解除され、古典的な戻るボタンの代わりに矢印を表示するのが理にかなっています。 – Vlad
@azizbekian APIを使用すると、戻るボタンの動作を変更できるので、関連するアイコンを変更することができます。 – ben75