Ich habe eine UIView
, die ein Bild und einige Schaltflächen als Unteransichten hat. Ich würde gerne ein "Schnappschuss" Bild davon mit renderInContext
oder einer anderen Methode bekommen.Rendering UIView mit seinen Kindern
[clefView.layer renderInContext:mainViewContentContext];
Wenn ich es passieren mein UIView
(wie oben), dann bekomme ich eine leere Bitmap. Keines der Kinder wird in die Bitmap gerendert.
Wenn ich es übergeben die untergeordnete Ansicht, die das Bild ist, dann bekomme ich ein Bild von dieser Bitmap und, nicht überraschend, keine ihrer Geschwister (Schaltflächen).
Ich hoffte, dass renderInContext
würde das Bild und alle sichtbaren Kinder und rendern es in eine Bitmap. Hat jemand Ideen, wie man das macht?
Danke, aber das hat es nicht getan. Ich bekomme die gleichen Ergebnisse. Das Problem, denke ich, ist, dass renderInContext die Subviews nicht durchläuft und nur die oberste Ebene tut, die an sie übergeben wird (trotz allem, was ich denke, dass es das tut). Muss ich renderInContext für jede Unteransicht aufrufen? – mahboudz
Ok, spiele ein bisschen mehr damit und das ist die richtige Antwort. Mein ImageContext wurde auf eine Geschwisteransicht und nicht auf eine Superview festgelegt. Danke! – mahboudz
Dies funktioniert viel besser als jede andere Methode, auf die ich gestoßen bin. – freespace