問題タブ [uitableview]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - cocos2d を使用した UITableView
私は Objective-C の分野の学習者です。cocos2dでiPhoneアプリを作ろうとしています。ここで、UITableView を使用して XML ファイルのデータを表示したいと思います。
cocos2d で UITableView を使用することは可能ですか? XML ファイルからデータを取得することも可能ですか?
iphone - UITableViewCellでの画像の遅延読み込み
UITableViewに約50個のカスタムセルがあります。URLから画像を取得するセルに画像とラベルを表示したい。
画像の読み込み中にUIがフリーズしないように、画像の遅延読み込みを実行したいと思います。別々のスレッドで画像を取得しようとしましたが、セルが再び表示されるたびに各画像をロードする必要があります(そうでない場合、セルを再利用すると古い画像が表示されます)
Facebookなどのアプリは、現在表示されているセルの画像のみを読み込みます。画像が読み込まれると、再度読み込まれることはありません。誰かがこの動作を複製する方法を教えてもらえますか?
ありがとう。
編集
NSMutableDictionaryオブジェクトに画像をキャッシュしようとすると、ユーザーが高速でスクロールすると問題が発生します。スクロールが完全に停止し、メモリ警告でキャッシュをクリアした場合にのみ画像が表示されます。ただし、アプリは常にメモリ警告を受け取り(キャッシュされている画像のサイズが原因で)、リロードする前にキャッシュをクリアします。スクロールが非常に速い場合、クラッシュします。
他の提案は大歓迎です
ios - XibファイルからカスタムUITableViewCellsをどのようにロードしますか?
質問は簡単ですUITableViewCell
。Xibファイルからカスタムをどのようにロードしますか?そうすることで、InterfaceBuilderを使用してセルを設計できます。メモリ管理の問題があるため、答えは明らかに単純ではありません。このスレッドは問題に言及し、解決策を提案していますが、NDAリリース前であり、コードが不足しています。これは、決定的な答えを提供せずに問題を議論する長いスレッドです。
これが私が使用したいくつかのコードです:
このコードを使用するには、MyCell.m / .hを作成します。これは、の新しいサブクラスでUITableViewCell
あり、必要なコンポーネントを追加IBOutlets
します。次に、新しい「EmptyXIB」ファイルを作成します。IBでXibファイルを開き、UITableViewCell
オブジェクトを追加し、その識別子を「MyCellIdentifier」に設定し、そのクラスをMyCellに設定して、コンポーネントを追加します。最後に、IBOutlets
をコンポーネントに接続します。IBでファイルの所有者を設定しなかったことに注意してください。
他の方法では、ファイルの所有者を設定し、Xibが追加のファクトリクラスを介してロードされていない場合にメモリリークを警告することを推奨しています。上記をInstruments/Leaksでテストしましたが、メモリリークは見られませんでした。
では、Xibsからセルをロードするための標準的な方法は何ですか?ファイルの所有者を設定しますか?工場が必要ですか?もしそうなら、ファクトリのコードはどのように見えますか?複数の解決策がある場合は、それぞれの長所と短所を明確にしましょう...
iphone - iPhone: TabView + TableView
簡単なものが欠けていると思いますが、それが何であるか正確にはわかりません。
を使用してアプリをセットアップしようとしUITabViewController
ていますが、タブの 1 つに UITableView と UISearchBar があります (ただし、Navigation Controller はありません)。Interface Builder ですべてのタブを設定しUITabViewController
、ビューは独自の xib ファイルにあります。のついたタブのxibファイルをUITableView
以下のように設定して接続します。
ブラウザ内のもの: ファイルの所有者 (クラスは UITableViewController の子である私のカスタム クラスです) ビュー -> ビュー
このセットアップはすべての項目を表示し、ロックアップしませんが、UITableView を使用してタブを読み込もうとするとクラッシュせずに DataSource を割り当てることができません。IB またはコードで、このテーブルにデータを取得するにはどうすればよいですか? 私の考えは次のとおりです。
- カスタム UITableView クラスを実装し、IB でテーブル ビューに接続するか、Xcode でカスタム テーブルビュー コントローラーに接続します。
- 機能するまで、頭またはラップトップを壁にぶつけます。
更新:これは、Tableview のデータ ソースに接続し、File Owner (カスタム tableviewcontroller のクラス) にデリゲートするときに、シミュレーターがコンソールにプッシュするエラーです。
2/14/09 6:59:12 PM TabBarWillbeRight[33172] * キャッチされない例外 'NSInvalidArgumentException' によるアプリの終了、理由: '* -[UIViewController tableView:numberOfRowsInSection:]: 認識されないセレクターがインスタンス 0x523760 に送信されました
iphone - UISearchBar TextField のサイズを変更しますか?
側にインデックスを持つ UITableView があります。UISearchBar を追加したいのですが、検索をクリアするためにインデックスが "x" と重なっています。連絡先アプリケーションで、UISearchBar 内のテキスト フィールドがこれに対応するようにサイズ変更されていることに気付きましたが、自分のアプリでこれを行う方法がわかりません。
viewDidLoad で次のことを試しましたが、うまくいかないようです。
何か案は?
iphone - UITableView 行を移動してから選択すると、端だけが青色に変わります
UITableView
並べ替え可能な行があり、標準UITableViewCell.text
プロパティを使用してテキストを表示しています。[編集] をタップして行を移動し、[完了] をタップしてから行をタップすると、組み込みUILabel
が完全に白 (テキストと背景) になり、不透明になり、セルの青い影がその背後に表示されなくなります。何を与える?私がしていないことで、私がしなければならないことはありますか?ハックな修正がありますが、本物のマッコイが欲しいです。
これを再現する方法は次のとおりです。
iPhone OS 2.2.1 SDK の標準の「Navigation-Based Application」テンプレートから始めます。
RootViewController.m を開く
コメント
/li>viewDidLoad
を外し、[編集] ボタンを有効にします。テーブルにいくつかのセルがあることを指定します。
/li>で
/li>tableView:cellForRowAtIndexPath:
、セルのテキスト プロパティを設定する行を追加して、組み込みの UILabel サブビューを使用します。並べ替えを有効にするには、コメントを外し
tableView:moveRowAtIndexPath:toIndexPath:
ます。デフォルトの実装は空白ですが、テンプレートにはデータ モデルが含まれていないため、この場合は問題ありません。Simulator、OS 2.2.1、Build and Go 用にプロジェクトを構成します。アプリが表示されたら、[編集] をタップし、任意の行を新しい位置にスライドさせ、[完了] をタップしてから、各行を一度に 1 つずつタップします。通常、タップすると行が選択され、青に変わり、テキストが白に変わります。しかし、移動したばかりの行をタップすると、UILabel の背景色が白のままになります。その結果、端に青い帯が付いた紛らわしい白いオープン スペースができあがります。奇妙なことに、最初の偽のタップの後、問題を修正するために別のタップが表示されます。
これまでのところ、それを修正するハックを見つけましたが、満足していません。ビルトインがUILabel
不透明でなく、選択直後に背景色がないことを確認することで機能します。
これは機能しているように見えますが、それが永遠に良い考えであるとは思っていません。これを修正する正しい方法は何ですか?
ios - UITableViewCell のコピー
tableView:cellForRowAtIndexPath:
nib ファイルからカスタム テーブル セルを読み込んでいます。これは、非常に遅いことを除けば、私の目的には最適です。
これで、長期的には、セル全体をコードで作成し、単一のビューを使用するなどの方法が正しいことがわかりました。しかし、これは試作品であり、そこまで力を入れたくありません。
UIViewController
今のところ、ペン先をサブクラスで 1 回だけ読んで、それtableView:cellForRowAtIndexPath:
をコピーしておけばよかったと思います。ここでの私の仮定は、ペン先を読むよりもコピーの方が速いということです。
これは、私が呼び出すペン先をロードするために使用するものですviewDidLoad:
(およびretain
その後)
これまでのところ、すべて順調です。しかし問題は、これを何度もコピーするにはどうすればよいかということです。それは可能ですか?
試し[_cachedObject copy]
てみましたが、どちらのコピー プロトコルもサポートして[_cachedObject mutableCopy]
いUITableViewCell
ません。
必要に応じて、ペン先を完全に取り外す準備が整うまで速度を無視するように指示できますが、ここにぶら下がっている果物がある場合は、もう少し速くしたいと思います.
何か案は?
ios - UITableViewCell を同じ行に並べて表示する (連絡先 -> 情報と同様)
iPhone の電話アプリに移動し、[連絡先] -> [情報] (任意の連絡先) に移動すると、連絡先の下部に、同じ行に 2 つの隣接する UITableViewCells があることがわかります。この特定のケースでは、「テキスト メッセージ」と「お気に入りに追加」です。
このレイアウトはどのように達成されますか? そこに例があれば、それは素晴らしいことです。