2017-06-30 8 views
0

最初にビューを見つけたビューを返すことによって、ビューグループ内でタイプ別にビューを取得しようとしています。Android:instanceOfで使用するビューからビュークラスを取得する方法

private View findViewByType(ViewGroup p, View v) { 
     for (int i = 0; i < p.getChildCount(); i++) 
      if (p.getChildAt(i) instanceof v.getClass()) return p.getChildAt(i); 
    } 

view.getClass()は動作しないようです。どのようにクラスをビューから取得できますか?

+0

チェック[この](https://stackoverflow.com/questions/4118062/android-get-type-of-a-view )。 – Adithya

答えて

2

一つの方法は、指定されたObjectが代入互換このClassによって表される物体とある場合

p.getChildAt(i).getClass().isInstance(v) 

isIsntance(Object)が決定することができました。あなたがドキュメントにhere

1

変更を読むことができます。このような場合:

private View findViewByType(ViewGroup p, View v) { 
     for (int i = 0; i < p.getChildCount(); i++) 
      if (p.getChildAt(i).getClass().isInstance(v)) 
return p.getChildAt(i); 
    } 
関連する問題