Ich habe einen Standard UITableViewCell
, wo ich die Text- und Bildeigenschaften verwende, um favicon.ico
und ein Label anzuzeigen. In den meisten Fällen funktioniert das sehr gut, da UIImage
das ICO-Format unterstützt. Allerdings haben einige Websites (wie Amazon.com ) favicon.ico
s, die die Speichermöglichkeiten des ICO-Formats nutzen mehrere Größen in der gleichen Datei. Amazon speichert vier verschiedene Größen, bis zu 48x48.
Dies führt dazu, dass die meisten Bilder 16x16 sind, außer ein paar, die bei 32x32 oder 48x48 erscheinen und alles schrecklich aussehen lassen. Ich habe hier das offizielle Forum, die Dokumentation und anderswo erfolglos gesucht. Ich habe alles versucht, was mir einfällt, um die Bildgröße zu beschränken. Das einzige, was funktionierte, war eine undokumentierte Methode, die ich nicht verwenden werde. Dies ist meine erste App und meine erste Erfahrung mit Cocoa (kam von C #).
Falls ich nicht genau wusste, wonach ich suche, würde der Ratschlag im Idealfall darin bestehen, die Dimensionen von UIImage
so zu setzen, dass die 48x48-Version auf 16x16 verkleinert wird oder eine Methode, um UIImage
anzuzeigen. die in der ICO-Datei vorhandene 16x16-Version zu verwenden. Ich brauche nicht unbedingt Code: nur ein Vorschlag für einen Ansatz würde mir gut tun.
Hat jemand irgendwelche Vorschläge? (Ich fragte im offiziellen Forum auch , weil ich schon mehr als einen Tag in diese versenkt habe Lösung wird dort veröffentlicht, ich werde es auch hier setzen.)
Ich mache etwas ähnliches in meiner App.
%Vor%Erstellen Sie anschließend ein neues Bild, das die Proportionen einschränkt. Ersetzen Sie "Bild" durch die ICO-Datei, die Sie von Amazon erhalten.
%Vor%Ich habe noch nicht genug Karma, um die Antworten zu kommentieren, aber ich hatte einen guten Erfolg mit dem obigen bbrandons-Code.
Ich habe eine ganze Reihe von Warnungen auf der Konsole bekommen, obwohl die Anzahl der Bytes pro Zeile nicht hoch genug ist - nachdem ich die Antworten darauf gelesen habe post Ich habe es am Ende auf 0 gesetzt, damit das System den richtigen Wert bestimmen kann.
zB:
%Vor%Ich weiß nichts darüber, wie Ico-Dateien funktionieren, also ist es vielleicht möglich, das 16x16-Bild bequem zu extrahieren und zu verwenden, aber ich habe keine Ahnung, wie.
Soweit mir bekannt ist, ist es nicht möglich, in einem generischen UITableViewCell
nützliche Eigenschaften für das Bild festzulegen. Der einfachste Weg (immer noch unordentlich, vor allem wenn Sie neu sind), alles auf 16x16 zu skalieren, wäre die Unterklasse UITableViewCell
, geben Sie eine UIImageView
, immer die Bildansicht auf 16x16 und setzen Sie den contentMode auf UIViewContentModeAspectFit
.
Tags und Links objective-c iphone cocoa-touch uikit favicon