0

グループ化されたUITableView内のプロトタイプセルを使用して、2つのUILabelを含むカスタムセルを作成しています。各UILabelにはテキストが入力されます。セルの左側に配置された最初のUILabelは、適切に動作します。

ただし、セルの中央にある2番目のUILabelは、どういうわけかセルの背景の後ろに描画されています。理由は説明できませんが、セルの背景色をデフォルトではなくclearColorに設定すると、2番目のラベルが表示され、問題なく機能します。セルを強調表示すると表示されますが、強調表示を解除すると再び消えます。ラベルは単に背景と「融合」しているだけではないと確信しています。背景は白で、ラベルは黒です。

何か案は?私は少し困惑しています。プロトタイプセルと複数のラベルを持つことに何らかの問題がありますか?

編集:私自身の質問に答えました。以下を参照してください。

4

1 に答える 1

0

よし、これで解決!

私が言ったように、私は 2 つの UILabel を使用してインターフェイス ビルダーでプロトタイプ セルをセットアップしていました。UITableView の cellForRowAtIndexPath デリゲート メソッドでこれらの UILabels にアクセスするには、ラベルのタグを使用していました。最初のラベルには「1」とタグ付けし、2 番目のラベルには「3」とタグ付けしました (なぜ 2 ではなく 3 なのかは聞かないでください)。とにかく、UITableViewCells には、タグ 1 で設定された特別なプロパティを持つラベルが既にあることがわかりました。2 番目のラベルを隠しているタグ 1 のラベルに加えて、セルのサイズを動的に変更しているときに (必要なときに)、セルの中央に配置されていました。上位に留まります)。

簡単に言うと、UITableViewCellsには​​タグ1の「特別な」ラベルが既に組み込まれているため、最初のラベルのタグを10に変更すると、すべてが期待どおりに動作するようになりました。

于 2012-06-27T19:09:02.797 に答える