programing

Android에 레이아웃을 프로그래밍 방식으로 포함하려면 어떻게해야합니까?

nasanasas 2020. 12. 3. 07:59
반응형

Android에 레이아웃을 프로그래밍 방식으로 포함하려면 어떻게해야합니까?


include내 예제와 같이 XML 태그를 사용하는 대신 프로그래밍 방식으로 레이아웃을 포함하는 방법을 찾고 있습니다 .

  <include layout="@layout/message"  
           android:layout_width="match_parent" 
           android:layout_height="match_parent" 
           android:layout_weight="0.75"/>

이 매개 변수 " layout ="@ layout / message "를 프로그래밍 방식 으로 변경해야합니다 .

이 작업을 수행하는 방법을 아십니까?


ViewStub대신 사용 include:

<ViewStub
    android:id="@+id/layout_stub"
    android:inflatedId="@+id/message_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="0.75" />

그런 다음 코드에서 스텁에 대한 참조를 가져 와서 레이아웃 리소스를 설정하고 확장합니다.

ViewStub stub = (ViewStub) findViewById(R.id.layout_stub);
stub.setLayoutResource(R.layout.whatever_layout_you_want);
View inflated = stub.inflate();

ViewStub stub = (ViewStub) findViewById(R.id.text_post);
        stub.setLayoutResource(R.layout.profile_header);
        View inflated = stub.inflate();

Mono.Droid / Xamarin에서 이것은 나를 위해 일했습니다.

ViewStub stub = FindViewById<ViewStub>(Resource.Id.layout_stub);
stub.LayoutResource = Resource.Layout.whatever_layout_you_want;
stub.Inflate();

참고 URL : https://stackoverflow.com/questions/18999601/how-can-i-programmatically-include-layout-in-android

반응형