Typensicherheit: Deaktivierte Umwandlung von Objekt in Liste <MyObject>

Ich habe eine ListView, die ein benutzerdefiniertes Objekt auflistet (sagen wir malMyObject).

Ich möchte es dynamisch durch einen Filter filternEditText also musste ich ein implementierengetFilter() mit einer publishResults-Methode:

@Override
protected void publishResults(CharSequence constraint, FilterResults results) {
    MyObjectAdapter.this.setItems((List<MyObject>) results.values);
    MyObjectAdapter.this.notifyDataSetChanged();
}

An dieser Stelle beschwert sich Eclipse:Type safety: Unchecked cast from Object to List<MyObject>

Ich bin mir sicher, dass diese Besetzung immer wahr sein wird, aber Eclipse schlägt nur vor, sie hinzuzufügen@SuppressWarnings("unchecked") aber ich bin total dagegenSuppressWarnings weil es nur das Problem verbirgt, keine Lösung ...

Ich habe versucht hinzuzufügen:

if(results.values instanceof List<MyObject>)

Aber Eclipse beklagt sich erneut und das löst nichts ...

Cannot perform instanceof check against parameterized type List<MyObject>. Use the form List<?>

Ich weiß, dass das Casting immer korrekt sein wird, aber was ist der richtige Weg, um den Code sicher zu machenresults.values ist eigentlich einList<MyObject> ?

Danke im Voraus!

Antworten auf die Frage(4)

Ihre Antwort auf die Frage