2

「追加」ボタンをクリックするたびにLinearLayoutに追加するインフレートビューがあります。このビューには多くのコンポーネント (TextViews、Spinner ) があるため、各ビューのコンポーネントの情報を取得して、他のボタン「確認」をクリックしたときにオブジェクトに配置するにはどうすればよいですか。

私はこれを試して、ここで StackOverflow で同様の解決策を見ました:

    confirmRecord = ( Button ) findViewById( R.id.btConfirmRecord );
    confirmRecord.setOnClickListener(new OnClickListener() {

    public void onClick(View v) {               
        ArrayList<ViewGroup> elementList = new ArrayList<ViewGroup>();

        for( int i = 0; i < listRecord.getChildCount(); i++ ){
           if( listRecord.getChildAt( i ) instanceof ViewGroup ){
            elementList.add( (ViewGroup) listRecord.getChildAt( i ) );
           }    
         }
        }
    });

しかし、私は特にビューから何を得たのかわかりません。

4

1 に答える 1

0

findViewById(int id)で呼び出すことができるという事実に気付いていないようですView

つまり、追加が押されたときに膨張している XML レイアウトで必要なビューに ID を追加できます。そして確認を押すと、 を呼び出して必要なビューを取得できますyourLinearLayout.findViewById(R.id.bla)

于 2013-01-30T17:35:38.407 に答える