znalazłem kilka rozwiązań, aby zmienić kolor turbinki na iOS:Cordova ekran powitalny zmiana koloru tarczy na Androidzie
How to show custom Splash Screen Spinner (i.e spinner with white color) in iOS phonegap app?
Change Color of Splash Screen Spinner in cordova-plugin-splashscreen
... i kilka innych pytań lub więcej mniej związane, ale nic, aby zmienić kolor obracanie ładowanie ekranu powitalnego na Androida. Mój ekran powitalny jest niebieski, a spinner jest lazurowy - nie bardzo widoczny - i chciałbym go zmienić na biały.
Używam cordova-plugin-splashscreen
z https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-splashscreen/index.html i buduję swoją aplikację lokalnie przy użyciu cordova build android
i udało mi się wdrożyć mój kod na moim urządzeniu. Ale nie ma szczęścia w zmianie koloru tego pokrętła.
myślę kod edytować w platforms/android/src/org/apache/cordova/splashscreen/Splashscreen.java
, podczas tworzenia obiektu ProgressBar:
private void spinnerStart() {
cordova.getActivity().runOnUiThread(new Runnable() {
public void run() {
spinnerStop();
spinnerDialog = new ProgressDialog(webView.getContext());
spinnerDialog.setOnCancelListener(new DialogInterface.OnCancelListener() {
public void onCancel(DialogInterface dialog) {
spinnerDialog = null;
}
});
spinnerDialog.setCancelable(false);
spinnerDialog.setIndeterminate(true);
RelativeLayout centeredLayout = new RelativeLayout(cordova.getActivity());
centeredLayout.setGravity(Gravity.CENTER);
centeredLayout.setLayoutParams(new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
/* The following line here: */
ProgressBar progressBar = new ProgressBar(webView.getContext());
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
layoutParams.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE);
progressBar.setLayoutParams(layoutParams);
centeredLayout.addView(progressBar);
spinnerDialog.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
spinnerDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
spinnerDialog.show();
spinnerDialog.setContentView(centeredLayout);
}
});
}
nie wiem programowanie Android (choć znalazłem wiele przykładów, nie jestem pewny, jak zbudować widoki w xml z plików zasobów, etc ... i prawie nie znalazłem dokumentacji opisującej jak dodawać zasoby do projektów cordova).
Używam cordova, więc nie muszę jeszcze tworzyć natywnych aplikacji na Androida, a bez tego szkolenia ta część stała się dość frustrująca - czy ktoś jeszcze znalazł rozwiązanie?
może związane https://developer.android.com/reference/android/widget/ProgressBar.html#setProgressTintList(android.content.res.ColorStateList) - ja po prostu nie wiem jak użyj ColorStateList i jest powiązany z plikami zasobów xml. –