0

各 UITableViewCell に 3 つの UIButton オブジェクトが並んでいて、すべてクリック可能な UITableView を作成しようとしています。

tableViewCell のアウトラインを非表示にして、クリックできないようにしたい (ユーザーがセルの上部にある UIView オブジェクトをクリックすることのみを許可する)。

グリッド レイアウトを作成しようとしています -- GMGridView やその他のグリッド レイアウトについては知っていますが、プロジェクトにこれ以上依存関係を追加したくありません。

UITableView を使用してこのカスタム グリッド レイアウトを作成するにはどうすればよいですか? 具体的には、1) tableViewCell アウトラインを非表示にする方法、2) セルをクリックできないようにしますが、上部のサブビュー オブジェクトはクリック可能にします。

ありがとう!

4

2 に答える 2

0

部分的な答えとして、tableviewcontroller / tableviewdelegateにこの関数を実装することで、すべてのセルを選択不可にすることができます。

- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    return nil;
}

また、セルの選択スタイルをなしに設定します

編集

「アウトライン」を非表示にする場合は、テーブルビューのセパレータスタイルも「なし」に設定する必要があります。

そして最後に、難しい部分は、グリッドレイアウトにすることです。私は以前のプロジェクトでこれを達成するために私自身の試みをしました。私がやったことは、UITableViewCellラベルを等間隔に配置するカスタムを作成し、それに応じてラベルを設定することでした。それを水平方向にスクロールさせることは、私がマスターしたことはありません。

于 2012-07-10T17:55:25.950 に答える
0

UITableView でこれを行う良い方法はありません。これを行った人を知っていますが、適切に機能させるには非常に長い時間がかかりました. ライブラリを使用することを強くお勧めします。それ以外の場合は、次の iOS リリースを待ちます。

于 2012-07-10T17:57:45.237 に答える