Es gibt eine App, in der BLE-Geräte gescannt werden und der MAC- und RSSI-Wert des Geräts zusammen mit einer Schaltfläche angezeigt wird, um eine Verbindung mit diesem Gerät herzustellen.Klicken Sie auf die Schaltfläche nicht beim Aufruf von notifyDataSetChanged
Der RSSI-Wert stammt von den Scan-Ergebnissen des BLE-Scans und wird in ListView aktualisiert. Die Frequenz, mit der Geräte gescannt werden, ist zu hoch und daher ändert sich der RSSI-Wert häufig. Bei jedem Scan wird ein Callback aufgerufen, der den Wert von RSSI in listrong Text aktualisiert und notifyDataSetChanged() aufruft.
Bedeutet bei jedem Scan-Ergebnis, dass notifyDataSetChanged() aufgerufen wird, um RSSI-Werte auf der Benutzeroberfläche zu aktualisieren. Wenn ich aber notifyDataSetChanged() zu häufig aufrufe, vermeide ich es, auf die Schaltfläche zu klicken. Ich klicke auf die Schaltfläche, aber es ist nicht wirklich klicken (mein Klick ist irgendwo verloren) während Callback ist immer wieder aktualisieren Adapter. Hier
ist die ähnliche Art von Situation, die ich denke, aber Lösung ist nicht bekannt
Jedes Element in der Liste wird aktualisiert –