2011-06-22 18 views
5

İçeriği bir XML dosyasından şişirdiğim bir sekmede ayarlamakta sorun yaşıyorum.Android: Şişirilmiş sekme içeriğini dinamik olarak nasıl değiştirebilirim?

Ben yaparak dinamik olarak benim TabHost ('sekmeleri') için bir sekme eklemek aşağıdadır:

 TabSpec passSpec = tabs.newTabSpec("Pass Tab"); 
     passSpec.setIndicator("Passengers", getResources().getDrawable(R.drawable.tab_message)); 

     passSpec.setContent(new TabHost.TabContentFactory() { 
      public View createTabContent(String tag) { 
       View layout = mInflater.inflate(R.layout.tab_content_passengers, null);     
       return(layout); 
      } 
     }); 
     tabs.addTab(passSpec); 

Bu iyi çalışır ... Ben daha sonra o sekmede içeriği değiştirmektedir ilgili sorun yaşıyorum neyi üzerinde. Tüm sekmeleri yeni düzenlerle yeniden şişirmeden, bunu gerçekleştirmenin herhangi bir yolu var mı? Bu

cevap

4

yeniden çizmek için zorlamak gerektiğini Sen (değişken layout bir başvuru tutabilir

t.invalidate(); 

yapmak

mInflater = LayoutInflater.from(this); 
    View layout = mInflater.inflate(R.layout.tab_content_passengers, null); 
    TextView t = (TextView) layout.findViewById(R.id.testText); 
    t.setText("Hello world??"); 
+0

Awesome, teşekkür ederim, bunun sadece bir aptal sorun olduğunu biliyordum – TomBomb

0

Dene: Aşağıdaki ve hiçbir şey olmuyor çalışıyorum

belki bir harita veya bir şeyde) ve daha sonra aşağıdaki gibi programlı olarak değiştirin:

tabMap.get(tabId).findViewById(R.id.testText).setText("The text is changed now!"); 

Arabirim iş parçacığı üzerinde yaptığınız sürece değişiklikler hemen yansıtılmalıdır.

İlgili konular