IKImageBrowserViewのグループヘッダーの外観を変更しようとしています。IKImageBrowserGroupHeaderLayerを使用してカスタムCALayerを提供できることを確認しましたが、その使用方法(レイヤーのサイズを取得する方法、グループが選択されているかどうかを確認する方法など)がまったくわかりません。
これへのポインタはありますか?
ありがとう
IKImageBrowserViewのグループヘッダーの外観を変更しようとしています。IKImageBrowserGroupHeaderLayerを使用してカスタムCALayerを提供できることを確認しましたが、その使用方法(レイヤーのサイズを取得する方法、グループが選択されているかどうかを確認する方法など)がまったくわかりません。
これへのポインタはありますか?
ありがとう
私は今日これに挑戦しました、そしてそれはかなり簡単に見えました。ただし、IKImageGroupDisclosureStyle
グループでのみ機能するように見えることに注意することが重要です。
これにより、各グループの上部に沿って素敵なピンクの線が表示されました。ビューがレイヤーを表示すると、レイヤーがブラウザービューの幅にサイズ変更されるように見えるので、私が入力したものwidth
はbounds
結果に違いはありませんが、それは尊重されheight
ます。
- (NSDictionary *) imageBrowser:(IKImageBrowserView *) aBrowser groupAtIndex:(NSUInteger) index
{
CALayer *headerLayer = [CALayer layer];
headerLayer.bounds = CGRectMake(0.0, 0.0, 100.0, 30.0);
CGColorRef colour = CGColorCreateGenericRGB(1.0, 0.5, 0.7, 1.0);
headerLayer.backgroundColor = colour;
CGColorRelease(colour);
return [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithInt: IKGroupDisclosureStyle], IKImageBrowserGroupStyleKey,
headerLayer, IKImageBrowserGroupHeaderLayer,
nil];
}
「グループが選択されているかどうかを知る」ということは、グループ内の項目の1つが選択されているということですか?ビューの変更を観察し、selectionIndexes
選択された1つまたは複数のアイテムを判別し、次にそれらがどのグループに分類されるかを判別し(グループをIKImageBrowserGroupRangeKey
構成するときに提供した方法と同様のプロセスを使用して、キャッシュしたことを願っています!)、1つで呼び出しreloadData
ます選択したアイテムが含まれているかどうかに基づいて、異なるレイヤー構成(またはその他)を返すグループの数。