Kann ich eine Schaltfläche deaktiviert erscheinen lassen und trotzdem auf Klicks warten?

8

Ich möchte eine Schaltfläche grau darstellen, sodass sie für den Benutzer deaktiviert erscheint, aber trotzdem auf Klicks lausche, damit ich dem Benutzer eine Nachricht anzeigen kann, die erklärt, warum die Schaltfläche nicht anwendbar ist.

Ich möchte sicherstellen, dass die Android-API diejenige ist, die die entsprechende standardmäßige deaktivierte Darstellung konfiguriert, im Gegensatz zur manuellen Einstellung der Schaltflächenfarbe auf grau usw. Was ist der beste Weg, dies zu tun?

Related: Android - Hören Sie eine deaktivierte Schaltfläche

    
Jeff Axelrod 01.06.2012, 15:25
quelle

5 Antworten

4

Sie können den Hintergrund Ihrer Schaltfläche auch manuell auf den Standard für deaktiviert festlegen. Aber lassen Sie die Schaltfläche aktiviert und behandeln Sie die Klickereignisse wie gewohnt

sollte so etwas machen:

%Vor%     
FoamyGuy 01.06.2012, 15:36
quelle
9

Dies ist eine benutzerdefinierte Schaltfläche, die das Berührungs-Ereignis freigibt, wenn sie deaktiviert ist Es funktioniert sicher und getestet. speziell für Sie entworfen

%Vor%

Dies ist der richtige Weg, um aus meiner Sicht als Android-Entwickler zu erreichen, was Sie wollen.

Es ist kein Problem, alle Android-Ansichten zu erweitern und sie in den XML-Dateien zu verwenden und stattdessen zu quellen.

viel Glück

    
Tal Kanel 02.06.2012 07:10
quelle
0

Ich bin kein Android-Experte, also könnte es bessere Wege geben, aber was ist mit der Deaktivierung der Schaltfläche und dem Überlagern einer transparenten Ansicht, die die Ereignisse auffängt?

Sie können die Ansicht immer unter der Schaltfläche anzeigen lassen, so dass Sie nur einen Z-Index ändern oder dynamisch erstellen müssen, wenn Sie ihn benötigen.

    
garph0 01.06.2012 15:30
quelle
-1

Sie können auch festlegen, dass der Stil Button abgeblendet (für gedrückte und nicht gedrückte Zustände) angezeigt wird, dann setOnClickListener() als normal, aber die onClick() -Methode gibt die Nachricht, dass sie nicht existiert. t klickbar.

    
jmhend 01.06.2012 15:37
quelle
-1

Seit Taste erweitert Textansicht. Sie können die Methoden in textview wie .setTextColor () oder .setBackgroundColor () verwenden.

Jetzt für die Anzeige haben Sie 2 Optionen:

  • AlertDialog - zeigt eine Warnung an, schließt sich aber nicht selbst, wenn sie nicht angegeben wird.
  • Toast - zeigt einen Text über eine bestimmte Zeit an und schließt sich selbst.

Treffen Sie Ihre Wahl.

    
Juju 01.06.2012 15:38
quelle

Tags und Links