2012-01-21 6 views
0

여러분!ANDROID - 루프 중에 동적으로 화면에 요소를 추가하십시오.

Android 프로그램을 만들고 있는데 for 루프 중에 TableLayout에 일부 텍스트를 나열해야합니다. 문제는 내가 줄이 많아서 천천히 보이지 않게 점차적으로 추가하고 싶지만 안드로이드는 loop의 끝에서 invalidate() 메서드를 호출한다. 아래

내 소스 :

Handler handler = new Handler(); 
subcategoriasLayout.addView(tableLayout); 
for (Product product : listProdutos) { 
    TableRow itemRow = new TableRow(this); 
    TextView descricao = new TextView(this); 
    descricao.setText(produto.toString()); 
    itemRow.addView(descricao); 

    itemRow.addView(new EditText(this), rowLayoutParams); 

    tableLayout.addView(itemRow); 

    if (++cont % 10 == 0) { 
     handler.postDelayed(new Runnable() { 

      public void run() { 
       subcategoriasLayout.invalidate(); 
      } 
     }, 10); 
    } 
} 
subcategoriasLayout.invalidate(); 

덕분에 많은

답변

0

당신은 AsyncProcess에이 모든 일의 로딩을해야 그 때문에 대신 루프를 사용하여 자사의 유체처럼 보인다.

+0

AsyncTask를 사용했고 매우 잘 작동합니다. 탁신! – eliangela

관련 문제