In Android-Dokument erwähnt es die Unterstützung des "Hover" -Ereignis seit 4.0 (dh API-Ebene 14 und höher). Aber irgendwie funktioniert es nicht. Auch ich habe den Beispielcode in ApiDemo ausprobiert, der von Android Sample stammt, es hat nicht funktioniert. Mein aktuelles Gerät ist Android 4.0.4. Sollte ich es auf 4.2.2 upgraden?onHoverListener funktioniert nicht in Android
Beispielcode ist etwas wie unten. Hatten Sie eine Lösung? Danke vielmals.
Code:
View container = findViewById(R.id.container);
container.setOnHoverListener(new View.OnHoverListener() {
@Override
public boolean onHover(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_HOVER_ENTER:
mMessageTextView.setText(Hover.this.getResources().getString(
R.string.hover_message_entered_at,
event.getX(), event.getY()));
break;
case MotionEvent.ACTION_HOVER_MOVE:
mMessageTextView.setText(Hover.this.getResources().getString(
R.string.hover_message_moved_at,
event.getX(), event.getY()));
break;
case MotionEvent.ACTION_HOVER_EXIT:
mMessageTextView.setText(Hover.this.getResources().getString(
R.string.hover_message_exited_at,
event.getX(), event.getY()));
break;
}
return false;
}
});
Danke. Wird es mit der Maus funktionieren? z.B. eine Bluetooth-Maus kompatibel mit Android-Gerät? –
Nicht sicher, ich habe es noch nie ausprobiert. Ich denke es könnte (eine nicht angeklickte Maus als Hover macht Sinn), aber ich kann es nicht schwören. –
Als ein Update zu diesem - einige Geräte werden jetzt in der Lage sein zu erkennen, ein einzelner Finger schwebt. Aber wirklich nur die höheren Endgeräte, wie die Note. Du kannst dich nicht darauf verlassen. –