2013-07-08 1 views

답변

1

이 시도 : 당신이 inflate 방법에 대한 자바 독을 선택하면

v[i] = inflater.inflate(R.layout.row, null); 
Button button = (Button) v[i].findViewById(R.id.button); 

mainLinear.addView(v[i]); 

당신이 표시됩니다

반환 값 : 팽창 된 계층 구조의 루트보기. 루트가 인 경우 루트 뷰입니다. 그렇지 않으면 확장 된 XML 파일의 루트입니다.

그래서 당신은 당신이 ID 또는 태그를 설정하거나 지역 변수에 저장할 수 있도록 레이아웃을 팽창 수익을 부풀려, 부풀려 방법에 대한 루트 매개 변수에 null을 전달합니다.

+0

하지만이 행을 4 ~ 5 번 반복합니다. 버튼 버튼 = (버튼) v [i] .findViewById (R.id.button); 공장? 모든 버튼에 동일한 ID가 표시됩니다. –

+0

레이아웃을 부풀게하고 4 개의 버튼을 찾고 있습니까? 아니면 4 개의 레이아웃을 팽창시키고 각각 하나의 버튼을 찾고 있습니까? – koso

+0

고마워요. –

1

, 버튼의 목록을 작성 당신은 버튼을 생성하고 다음과 같이 자신의 ID, 태그 및 onclicklistenners을 설정하고 버튼 목록에 추가 할 수 있습니다 :

buttonList = new ArrayList<Button>(); 

    for (int i=0;i<5;i++){ 
     Button button = new Button(getApplicationContext()); 
     button.setOnClickListener(mThisButtonListener); 
     button.setId(i); 
     button.setTag(i); 
     myLayout.addView(button); 
     buttonList.add(button); 
    } 

그리고 당신은 다시 버튼을 사용 할 때 목록에서 ID 또는 태그를 호출하십시오.