2010-10-05 4 views
10

Herhangi bir Infrastructure ne olduğunu ve nasıl bir Android uygulamasında kullanıldığını söyleyebilir misiniz?Inflator

Bunun tam kullanımını bilmiyorum ve Neden kullanılıyor?

cevap

21

enflasyonu ele Tercih ettiğim yol:

//First get our inflater ready, you'll need the application/activity context for this 
LayoutInflater mInflater; 
mInflater = LayoutInflater.from(mContext); 

//Inflate the view from xml 
View newView = mInflater.inflate(R.layout.my_new_layout, null); 

//Then you'll want to add it to an existing layout object 
mMainLayout.add(newView); 

//Or perhaps just set it as the main view (though this method can also 
// inflate the XML for you if you give it the resource id directly) 
setContentView(newView); 

Temel olarak, çalışma zamanında var olan xml düzenleri şişirmek için kullanabilirsiniz. Genellikle devam edin ve bu yeni görünümleri daha önce tanımlanmış ViewGroups veya List nesnelerine ekleyin.

+0

1 üst işaretleri lütfen sayesinde –

+0

bulursanız = id sonraki xml mevcuttur @Marloke büyük yardım adamı –

6

Ne demek istediğinizden emin değilsiniz, ancak görünümleri şişirmekle ilişkiliyse, düzen xml dosyalarını uygulamanıza yüklemek için kullanılır. örneğin

View myWelcome = View.inflate(this, R.layout.welcome, null); 

Its daha kolay ve düşünün en iyi uygulama tarafından yerine kod tarafından tamamen görüşlerinizi yaratma, düzen xml dosyaları içinde tanımını görüntülemek için.

2

düzen Şişirme Eksiksiz düzeni bir java nesneyi döndürmek için kullanılır

Eğer kök öğesi göreli düzen olduğu bir düzen xml dosyası var ve daha sonra düzen Şişirme sen dönebilirsiniz kullanarak bir ImageView ve TextView içerdiğini düşünelim tüm düzen için başvuran bir görünüm nesnesi. Bu temelde, liste görünümünde ve ızgara görünümünde, tek satırın veya tekrarlanacak olan öğenin düzen nesnesini takmak için kullanılır. .. Bir java sınıfında iki xml dosyaları kullanmak istediğinizde

0

Eğer Şişirme kullanımı için soran .. temelde, Şişirme kullanılır ve kodu aşağıda verilmiştir hangi basittir

TextView text; 
    View layout; 
     LayoutInflater inflator=getLayoutInflater(); 
     layout =inflator.inflate(R.layout.new_xml_that you want to use in that java class,null); 

     text=(TextView)layout.findViewById(R.id.text); 
     text.setText("progressing"); 

burada i TextView kullanmak bu metin thats .. bu layık ardından .. böyle büyük bir özlü cevap için teşekkür