Ask questions, find answers and collaborate at work with Stack Overflow for Teams. Explore Teams Collectives™ on Stack Overflow Find centralized, trusted content and collaborate around the technologies you use most. Learn more about Collectives
iOS7・・・ iOS7・・・ ウーン・・・ iOS7のUITableViewCellのサブクラス、つまりカスタムセルがなぜか描画されませんでした。 一応解決して、原因もなんとなくわかったのでメモ。 ↓なぜか描画されない。 描画してた仕組みはこんな感じで、- (void)drawRect:(CGRect)rectに書いていました。 - (void)drawRect:(CGRect)rect { [super drawRect:rect] ; // draw draw ... } リファレンスを見るとこんなのが。 Whether you use a predefined or custom cell, you can change the cell’s background using the backgroundView property or by changing the inheri
前回書いた「iOS 7から追加されたDynamic Typeを使ってみた」の続編です。 新しくわかったこと 前回は「UIFontDescriptor を使う必要がある」と書きましたが、その後の調査で + (UIFont *)preferredFontForTextStyle:(NSString *)style メソッドを使えば Dynamic Type に対応できることがわかりました。 このメソッドではフォントのサイズではなく、スタイルを定義します。*1スタイルには次の値を指定できます。 UIFontTextStyleHeadline UIFontTextStyleBody UIFontTextStyleSubheadline UIFontTextStyleFootnote UIFontTextStyleCaption1 UIFontTextStyleCaption2 各スタイルがどのよう
今回はUITableViewクラスについて疑問に思うことを書いてみようと思います。 主な疑問UITableViewクラスを使う際に毎回、カスタムセルを使ったほうがいいのかなとずっと悩んでいました。 結論カスタムセルについて色々しらべて以下の記事にたどり着きました。 UITableViewについて | ios-practice/docs/tableview.rst - GitHub 先に結論を書いてしまうのですが、 カスタムセルはなるべく使うようにする ということ。 なぜかというと上の参考記事からその理由を抜粋すると(少し長いですが)、 最初の表示更新メソッドが利用しにくくなることや dequeueReusableCellWithIdentifier: によるセルのキャッシュも利用しくくなるため、 UITableViewCellのサブクラス(いわゆるカスタムセル)を作り、Cellの拡張したV
こんにちは、豪(たけし)です。 UITableViewでの縦スクロールが妙に重いケース、良くありますね。 今回はHotel.jpのiPhoneアプリで縦スクロールをスムーズに高速に動かすために 行っていることをご紹介します。 Hotel.jpアプリのホテルの検索結果画面では、1つのセルの中にテキストラベルが 15個+画像2つ、しかもテキストラベル14個は画面左のタブを押すと横移動も するといういかにも重そうなインターフェースなのですが、iPhone4であれば スムーズに縦スクロールします。 検索結果画面 動画(30~40秒目が検索結果画面です) ここ苦労したんです・・・。実装方法をざっとお話します。 最初は楽をしてやろうとUITableViewCellのNibを作ったのですが、 1つのセルにUILabelを15個並べて更に横に移動するようにすると もうスクロールと
http://cocoatouch.sblo.jp/article/26626578.html みたいなことをGCD+Blocksでやってみた記録。コメントは間違っているかもしれない。実際のコードの抜粋で、tableView:cellForRowAtIndexPath:内のコードである。itemSpecはNSDictionaryであり、Amazonから引っ張った商品データや画像URLが入っている。 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { // (中略。cellの準備や再利用コード) // 表示すべきデータの読み込み NSMutableDictionary *itemSpec = [search_results object
Update アップデート4/17/2013 Xcode4.6、及びARCに対応しました。(オリジナル投稿者:Ray Wenderlichアップデート投稿者:Brian Moakley)。 このチュートリアルは初めての”Core Graphics”シリーズ第3弾、実践的なプロジェクトを例に”Core Graphics”を学びましょう! シリーズ・パート1では、Table Viewのセルの背景をカスタマイズする事で線の引き方と長方形、グラデーションの作成方法を学びました。 In the シリーズ・パート2では、Table Viewのセルの”header”をカスタマイズする事で、影とグロスエフェクトの作成方法を学びました。 このチュートリアルでは”footer”と少しのスパイスを加える事でTable Viewを完成させます。加えて”アーク(円弧)”の描画と”クリップ”や”パス”を使う方法を学び
アップデート4/16/2013 Xcode4.6、及びARCに対応しました。(オリジナル投稿者:Ray Wenderlichアップデート投稿者:Brian Moakley)。 このチュートリアルは実践的な”Core Graphics”チュートリアル•シリーズの第2回目となります。 The シリーズ、パート1 のチュートリアルでは、Table View Cellの背景色を作成する事で、線と四角形とグラデーションの描画を勉強しましたね。 今回のチュートリアルではTable Viewの”header”のカスタマイズに移りたいと思います。今回学ぶ事は前回のチュートリアルで学んだ知識をより強固なものにして影の描写と”グロス•エフェクト”になります。 もし必要なら前回のチュートリアルのサンプルプロジェクトをダウンロードしてください。 それでは、始めます! Table Viewカスタマイズの次なるステッ
アップデート4/15/2013 Xcode4.6、及びARCに対応しました。(オリジナル投稿者:Ray Wenderlichアップデート投稿者:Brian Moakley)。 “Core Graphics”はiOSに於いて非常に優れたAPIなんです。これを使う事によってもの凄くカッコ良くUIをカスタマイズする事が出来るんです。これが使える様になれば、グラフィック担当のアーティストなんか必要なくなります。 でも、多くのiOS開発者が、何故か”Core Graphics”に対して最初は威圧感を感じます。それは、あまりに広大なAPIであるという事と、開発途中に思わぬ障害に巻き込まれる事があるからです。 これは、チュートリアルですから、”Core Graphics”に対して多くの開発者が感じるちょっとだけ取っ付きにくい感を、これから一緒に作成するプロジェクトを通して払拭して行きたいと思います。まず
デフォルトのUITableViewCellの背景が白くてのっぺりでいまいち味気ないと思い、背景にグラデーションを付けてかっこよく見せる方法を調べてみました。単純に別途用意した背景画像をbackgroundViewに表示してもよいのですが、Cocoa Touchの2Dグラフィックスライブラリにはグラデーションを描画するためのCGGradientというクラスが最初から用意されています。さっそく私もパクってインスパイアされてやってみました。 参考にしたページはこちら。 http://developer.apple.com/documentation/graphicsimaging/conceptual/drawingwithquartz2d/dq_shadings/dq_shadings.html#//apple_ref/doc/uid/TP30001066-CH207-TPXREF101 ■ど
I am using the UITableViewCell object in the UITableViewCellStyleSubtitle style (i.e an image view on the left, text label in bold and under that a detail text label) to create my table. Now I need to detect touches on the UIImageView and also to know the indexpath/cell in which the image view was clicked. I tried using cell.textLabel.text = @"Sometext"; NSString *path = [[NSBundle mainBundle] pat
スワイプの処理 RootViewController にUIGestureRecognier を左右両方向について登録しておく。 - (void)viewDidLoad { [super viewDidLoad]; : UISwipeGestureRecognizer* swipeGesture = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(didSwipeCell:)]; swipeGesture.direction = UISwipeGestureRecognizerDirectionRight; [self.tableView addGestureRecognizer:swipeGesture]; [swipeGesture release]; swipeGesture = [[UIS
UITableViewCellに大量の文字を表示しようとしている。Twitterクライアントのような感じで。いろいろと試しているうちに、2つのポイントがあることが分かった。 セルの行数指定を無効にする。何行でも表示できるようにする セルの高さを計算する 参考:TableViewCellの高さを変更して複数行表示に対応する。|独学者の独り言 セルの行数指定を無効にする 普通にUITableViewCellを利用すると、最大行数しか文字が表示されない。そのため、最大行数を0行と指定する。Interface Builderで、ラベルのプロパティ「Lines」を”0″とする。0行だと文字数分の行数となる。 セルの高さを計算する これが少し大変だった。1つ目の行数指定がなくなったので、セルの枠をはみ出て、文字が表示されるようになる。そのため、セルの高さは自前で計算して設定しないと行けない。 まずは、
just in case anyone comes across this question, this is how you add UITextFields to a group table. In the UITableViewController (which I assume is the table's delegate & datasource) implement the following functions: - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"CellIdentifier"; UITableViewCell *cell = [
独学者の独り言 Web系とかアプリ開発とか。内容はグダグダで腰砕け。 PR ブログ内検索 プロフィール プロフィール|なう|ピグの部屋 ニックネーム:原 宏之 性別:男性 誕生日:1972年12月18日 お住まいの地域:東京都 自己紹介: Webサービスの開発・運営/ iOSアプリ開発/ コンビニFC事業/ ブログジャンル:日々是精進/パソコン メッセージを送る アメンバーになる プレゼントを贈る [記事作成・編集] ブックマーク 有限会社ハートワン Twitter - harahiroyuki ダイエットSNS $php_none - PHP独習用ノート iOS AppNote - iOS開発メモ $jQuery.note - jQuer… Heartone - 名言集ブログ [一覧を見る] 最近の記事一覧 iPhoneアプリを公開用に署名してビルドする 妥協 百考は一筆に如かず 画像の
Twitterクライアントでよく見る可変長のUITableViewCellを作成してみました。(ソース) ざっくりと調べたところ、UILabelを用いると簡単に実装できるみたいなんですが、これの問題点はhrefなどのリンクが使えないところ。 僕のよく使ってるechofonなんかは、aタグだけじゃなく@XXXXとかもリンクで飛べる実装にしているみたいなので、これも視野に入れて実装してみたいな、と。 で作ってみた。 実装は大まかに以下のよう。 1.tableView:heightForRowAtIndexPathにとりあえずの高さ100.0を返す。 2.tableView:cellForRowAtIndexPathでUITableViewCellを作成する。高さ1のUIWebViewを作成し、loadHTMLStringでテキストを読ませておく。 3.tableViewをreloadするために
方位を取得(startUpdatingHeading)し、didUpdateHeadingが呼ばれたら、UITableViewCellのdetailTextLabel.textを書き換えようと思い、次のように書きました。 - (void)locationManager:(CLLocationManager *)manager didUpdateHeading:(CLHeading *)newHeading { NSString *heading = [NSString stringWithFormat:@"%.0f", newHeading.trueHeading]; UITableView *tableView = (UITableView *)self.view; UITableViewCell *headingCell = [tableView cellForRowAtIndexPa
結局、本の内容をなぞるだけの状態になっていて、 こんなのEvernoteにやっとけよ状態なのが心に痛い今日この頃です。 と言うわけで、今回読む章は… 6 テーブルのパターン テーブルは、iPhoneでいちばんよく見かけるユーザーインタフェース。 便利で多機能だが、それゆえに複雑なプログラミングを要求される。 6.1 テーブルとは 6.1.1. テーブルはiPhoneの中心 テーブルビューの特性について書いてある。 6.1.2. UITableView と UITableViewCell テーブル全体がUITableViewで、各行がUITableViewCell。 *01まあ、名前見れば想像はつく ポイントは、UITableViewCellが、 Cocoa touchのビューの中では、ちと特殊であるということ。 一般的にCocoa touchのビューはサブクラス化を行わない。 理由は、挙動
UITableViewについて¶ TableViewにおいていくつか気をつけておくと良いことがあります。 下記を参考に書いています。 iOS開発におけるパターンによるオートマティズム Pro iOS Table Views timd/Pro-iOS-TableViews Cellの表示更新を別のメソッドに分ける¶ tableView:cellForRowAtIndexPath: のdelegateメソッドでそれぞれのUITableViewCellを生成しますが、 このメソッド内で、Cell内容を更新する処理を直接書くのは避けましょう。 - (void)updateCell:(UITableViewCell *)cell atIndexPath:(NSIndexPath *)indexPath { // Update Cells } - (UITableViewCell *)tableVie
UITableViewCell の imageView は、画像を角丸にしたり、サイズを指定したりという、ある程度の設定を行う事が出来ますが、contentsMode や、frameなどのプロパティを設定しても、正しい位置に設定出来なかったり、また、横向き画像と縦向き画像がごちゃまぜになって、見栄えがガタガタになったりして、使いにくかったりします。また、Retina の画像を貼付けて、しかもサイズを小さくしようとすると、うまくいかず、解像度が悪くなってしまうこともあります。こんな感じです。 普通にUITableViewがレイアウトした状態 あまりかっこ良くないですよね。 これをこんな感じに、きれいに整える方法を紹介します。 レイアウトした状態 うまくいかないのは、 – (UITableViewCell *)tableView:(UITableView *)tableView cellFor
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く