2011-06-26 12 views
2

私はまだかなり新しいアンドロイドですが、私はそこに着いています!LayoutInflater and ExpandableListView

私はアンドロイドデベロッパーwebsiteのapiサンプルコードとほぼ同じExpandableListViewを作成しました。 ExpandableListは素晴らしく機能します。

xmlとSimpleExpandableAdaptorでカスタムレイアウトを作成しようとしましたが、悪夢がありました。これは、ポイントに私をもたらします:

私はLayoutInflatersとXMLファイルでどれくらいうまく動作するかについて多くのことを読んでいます。しかし、2つの別々のImageButtonを作成し、それらをxmlを参照せずにgroupExpandedインジケータの隣(TextViewグループ内)に配置したいと思います。私はAPIで提供されたコードがxml、生成されたランタイムに依存していないため、XMLを使ってこれを行うことはできないと思います。

LayoutInflaterはこの状況(xml)で動作しますか?誰かが私がクリーンなソリューションを探すかもし​​れない提案を持っていますか?

ありがとうございます。

答えて

1

私は、LayoutInflaterが、XMLレイアウトをViewオブジェクトにロードするという明白な目的のために使用されていると信じています。別の方法として、あなたはRelativeLayout /のLinearLayoutなどを構築することにより、独自のビューを作成し、プログラムでそれにあなたのImageButtonsを追加

LinearLayout layout = new LinearLayout(context); 
layout.setOrientation(LinearLayout.HORIZONTAL); 
layout.addView(imageButton1); 
layout.addView(imageButton2); 
+0

素晴らしいです。ありがとうございました。 – atomSmasher

3

をあなたは両方を行うことができ、いずれかLayoutInflaterを使用してXMLレイアウトを膨らまやAndroidを使用してビュー要素を作成することができますオブジェクトモデル。コードに触れることなく簡単にレイアウトを後のポイントに変更できるので、XMLファイルを使用することをお勧めします。

this blog投稿を見ると、ExpandableListView用のアダプタでレイアウトを拡張する方法が示されています。

+0

これらのルートの両方が機能しました。私はあなたに小さなチェックマークを与えるだろう..しかし、それは私に2つを与えることはできません!ご協力いただきありがとうございます。 – atomSmasher

+0

問題ありません。もしそれが良かったら私の答えを投票することができます。 ;) – Flo

+0

取引...私は15の担当者を押すとすぐに! – atomSmasher