2016-04-06 23 views
0

Başlıkta belirttiğim gibi, ViewStub'ı genel bir düzen olarak kullanmak isterim. Demek istediğim, şu anda diğer faaliyetler veya fragmanlar için genişletilecek temel aktivite sınıfım ve temel bölüm sınıfım var. Genel sınıflarım olduğu için genel bir düzenim olup olmadığını merak ediyorum. Mümkün mü?ViewStub'ı genel bir düzen olarak kullanın android

Örnek düzeni: @+id/viewStub içeriği istenilen düzene göre değişecektir

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    tools:context=".activities.Activity_Main"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical"> 

     <include layout="@layout/toolbar" /> 

     <ViewStub 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:id="@+id/viewStub" 
      /> 

    </LinearLayout> 

</android.support.design.widget.CoordinatorLayout> 

.

cevap

1

Evet, istediğiniz düzen kimliğini ilettiğiniz setLayoutResource() yöntemini kullanarak program aracılığıyla bunu yapabilirsiniz.

ViewStub stub = (ViewStub) findViewById(R.id.viewStub); 
stub.setLayoutResource(R.layout.some_layout); 
View inflatedLayout = stub.inflate(); 

şişirme() çağrılır

, ViewStub şişirilmiş adlı ile değiştirilir ve şişirilmiş Görünüm döndürülür. Bu, uygulamaların ekstra findViewById() çalıştırmadan şişirilmiş Görünüm'e bir başvuru yapmasına izin verir.

İşte reference.

İlgili konular