• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:アコーディオン風のtableviewの遷移について)

アコーディオン風のtableviewの遷移について

このQ&Aのポイント
  • アコーディオン風の階層的なtableviewからタップで画面を遷移するコードを作成中です。
  • セルにAとBがでてきて、AをタップするとA⇨Item1,Item2,Item3,BをタップするとB⇨Item1,Item2,Item3というようにそれぞれのセルがでてくるようにしています。
  • 次にItemのセルをタップすると、そのタップしたItemに相当する番号に合わせて画面が遷移するようにしたいですが、その方法がわかりません。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

didSelectRowAtIndexPathの先頭付近に if([d valueForKey:@"Objects"]) { というif文がありまよね。 ここは、dというテーブル選択位置のNSDictionaryオブジェクトの中に "Objects"というキーがあるかを確認しており、それが存在する場合を アコーディオン伸長/縮小処理が必要な項目のタップだと判断しているようです。 つまり、このif文のelseルート(すなわち"Objects"というキーがないケース)が アコーディオン伸長/縮小処理が不要な最下位層の項目を選択したということになります。 とりあえず、このif文のelseルートを作り、そこに NSLog(@"Select %@",[d valueForKey:@"name"]); とか書けば、Itemのセルをタップした時にログが表示されると思います。

niconico7chan
質問者

お礼

Lchan0211bさん、本当に本当、いつも助けて頂きましてありがとうございます!(涙) お陰さまで、教えて頂いたとおりに、elseルートを作り遷移させると、2行のコードの追加で 遷移することができました。 また、これまで教えて頂きました、PageViewやViewControllerの画面にもplistに相関させている数字で画像を乗せることができました。 本当に、いつもお時間を割いて頂き、どれだけ助けて頂いたかと思うと感謝尽せません。 本当にありがとうございました。

その他の回答 (1)

noname#190876
noname#190876
回答No.2

聞いてることと、やってることのギャップがひどいですが。 これは、Collapsible TableViewといって、高等トピックですが、聞いているのは、かなり初級なことです。 テーブルの中身を、plistからよびだすとこなんかも、通らしさがでてますので、おそらく、どこかからパクってきたけど 中身が、わかりきってないのでは。  Collapsible TableView については、WWDC-2013のサンプルコードのなかに、いいやつがあります。  拾い方は、wwdc-downloader で、ググれ。英語優先で引いたほうがいいだろう。  さて、cell-1,cell-2,cell-3 で、画面推移したく、cell-A,cell-Bで、画面推移したくないなら、 A)cell-1,cell-2,cell-3で、対応するアクションwp定義しておく。cell-A,cell-Bで、アクションを定義しない。 B)cell-1,cell-2,cell-3,cell-A,cell-Bを区別せず、UITableVuewDelegateのdidSelect...で、分別処理する。  のどちらかになりますが、あきらかに、A案の方が上策だと思いますけどね。問題は、addTargetできるのは、UIControlの子孫だけなので、UIButtonの類をおくか、全面に、みえないUIBottonを配置するというのは、どう。

niconico7chan
質問者

お礼

いつもありがとうございます。(以前のTag番号のところではお世話になりました!) xpd154さんのご指摘通りです。 全くのゼロから独学でやってまして、全くわからず、色々な方のgithubなどを参考にさせて頂き作業を進めておりまして、伺っている内容とのギャップがでてしまい、申し訳ない質問の内容になっております。すみません。 wwdc-downloaderというのは全く存じておりませんでした。 ありがとうございます。 お陰さまでA案に近いやり方でできるようになりました。 貴重な時間を割いて頂き、貴重なアドバイスをありがとうございました。