2011-10-26 10 views
7

ビューからレイアウトを取得する

View add_phone = getLayoutInflater().inflate(R.layout.phone_info, null); 

どうすればadd_phoneビューからRelativeLayoutにアクセスできますか? getChildCount()のようなメトスはありますか?

+0

あなたのお手伝いをするためにあなたのレイアウト(phone_info.xml)を追加してください:) –

+0

私はあなたが何を言っているかを知りませんでした。 –

+0

レイアウトを追加して、アクセス方法を正確に伝えることができます。 –

答えて

6

はい、のgetChildCount()、のLinearLayout、RelativeLayoutなどのようなのViewGroupに取り組んでいます。..

ViewGroup add_phone = (ViewGroup) getLayoutInflater().inflate(R.layout.phone_info, null); 
int childCount = add_phone.getChildCount(); 

あなたはそうしないと、クラスキャスト例外が発生します、膨張したレイアウトは、親ビューとしてのViewGroupていることを確認する必要があります。 ViewGroupはあなたがあなたのケースでは

View.findViewById(int id) 

を通じてビューの子ビューを見つけることができます

+0

私はadd_phoneオブジェクトで同じメソッドを使用できますか? –

+0

は、ViewGroupのViewGroupまたはサブクラスの場合にのみ表示されます。 –

4

...のLinearLayout、RelativeLayoutなどのように何もすることができ、それは限り、あなたは持っているよう

RelativeLayout child = (RelativeLayout)add_phone.findViewById(R.layout.phone_info) 

に変換しますadd_phone内の子要素の一意のIDです。これは、正しい要素を返す必要があります。

関連する問題