Ihre Frage: Wie wird die Interaktion mit dem Benutzer deaktivieren, während ProgressBar sichtbar in Android ist?
die Interaktion mit dem Benutzer deaktivieren Sie müssen nur
den folgenden Code hinzufügen
getWindow().setFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE,
WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);
Sie nur Interaktion mit dem Benutzer zurück müssen
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);
Hier den folgenden Code hinzufügen ist ein Beispiel: Hinweis: Ich gebe Ihnen nur ein Beispiel zu sho w, wie Benutzer-Interaktion
einen Fortschrittsbalken in Ihrem xml.Something hinzufügen wie diese
<ProgressBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/progressBar"
android:visibility="gone"/>
In MainActivity wenn eine Taste gedrückt Sie die progressbar zeigen und deaktivieren Sie die Interaktion mit dem Benutzer sperren oder behalten. interaction.Something wie diese
@Override
public void onBackPressed() {
super.onBackPressed();
mProgressBar.setVisibility(View.GONE);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mImageView = (ImageView) findViewById(R.id.imageView);
mProgressBar = (ProgressBar) findViewById(R.id.progressBar);
mImageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mProgressBar.setVisibility(View.VISIBLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE,
WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);
}
});
}
Und wenn Benutzer backPressed Sie die progressbar wieder entfernen den Benutzer beibehalten Wenn Sie eine Funktion der Sperrung hinzufügen möchten, und Display abgeblendet, müssen Sie in hinzufügen Ihre XML-Layout-Datei ein lineares Layout, das den übergeordneten füllt. Setzen Sie den Hintergrund auf # B0000000 und seine Sichtbarkeit auf gegangen. Dann programmiere die Sichtbarkeit sichtbar auf Sichtbar.
Hoffe diese Hilfe!
Mögliche Duplikat [Custom Drawable für ProgressBar/ProgressDialog] (http: // Stackoverflow. com/questions/2819778/custom-drawable-for-progressbar-progressdialog) –
@ txteclipse Ich möchte nicht Fortschrittsbalken anpassen, das habe ich bereits getan. Also, meine Frage ist nicht doppelt. Ich möchte nur Benutzerinteraktion deaktivieren, während der Fortschrittsbalken sichtbar ist. Auf die gleiche Weise, wenn ein ProgressDialog sichtbar ist, kann der Benutzer nicht mit anderen UI-Steuerelementen interagieren, ohne den Fortschrittsdialog zu verwerfen. Nun, wie ist meine Frage ein Duplikat dieser Frage. Meine Frage bezieht sich nicht einmal im entferntesten auf die Anpassung. –
Wenn Sie alle Funktionen eines Dialogs wünschen, sollten Sie einen Dialog verwenden. Modalität ist nicht trivial zu implementieren: Die akzeptierte Antwort blockiert beispielsweise die Interaktion mit der Tastatur nicht. Die zweite Antwort in der verknüpften Frage veranschaulicht, wie benutzerdefinierte ProgressBar-Ressourcen mit einem ProgressDialog verwandt werden. Wenn dies Ihren Anforderungen nicht entspricht, können Sie ein [benutzerdefiniertes Layout] (http://developer.android.com/guide/topics/ui/dialogs.html#CustomLayout) mit Ihrer ProgressBar verwenden. –