0

私は最近、基本的に画像/プレゼンテーションビューアであるiPad用のプロジェクトを継承しました。ユーザーが見たいプレゼンテーションを選択した後、アプリは基本的に画像を1つずつ表示し、ユーザーが上下にスワイプしたとき、または画面の隅にある矢印の1つをタップしたときに変化します。ただし、プレゼンテーションの一部の画像には、両側に矢印が付いたページネーションドットがあります。画像は順番に並んでおり、次から次へとスワイプするとドットが移動します。クライアントが望んでいるのは、静止画像の一部であるドットと矢印をナビゲーションに使用できるようにすることです。つまり、ドットに当たると、適切なページに移動します。

このアプリケーションの初期の初期の元のバージョンには、これらのカルーセルビューのいずれかがあるかどうか、およびそれらがどこに移動するかなど、アプリ内のすべての画像に関する情報を含む巨大なplistファイルがありました。これはもう昔のことであり、アプリには当時よりもはるかに多くの画像/プレゼンテーションがあります。

タッチを聞く場所を決定するためのより良い方法はありますか?または、テキストファイルの作成を辞任し、コンテンツが変更されたときにそれを編集する必要があることを知っている必要がありますか?内容はそれほど頻繁に変更されるべきではないと言われました。

4

1 に答える 1

0

画像のドット位置へのマッピングを作成する必要があります。画像は表示の対象となるため動的に作成し、画像がスコープ外になったときに削除します。UIImageViewsを使用している場合は、タグフィールドを使用できますが、そうでない場合は、生のCGImageRefsまたはUIImagesを使用しても機能します。

mutableDictionaryを作成し、キーを使用して画像にマップします。UIImageViewの場合、これはタグを表すNSNumberにすることができ、画像の場合は、画像のアドレスに設定されたNSValueオブジェクトを使用できます。画像がスコープに入ると、画像キーと、ドットの位置を識別する単一のNSNumber、またはヒットした長方形の文字列表現のいずれかを含むエントリを辞書に追加します(文字列にCGRectを実行したり、その逆を実行したりできることを思い出してください)。 NSStringFromCGRect()などを使用)。

画像をタップすると、関連する画像のキーを取得し、可変辞書からロケーターを要求して、許可または禁止します。タップ認識を行っているのはおそらく画像自体ではないため、どのコンテナにある画像のフレームでも知る必要があります。これにより、ローカル画像のオフセットを取得できます。

于 2012-10-11T21:45:52.713 に答える