레이아웃 매개 변수를 동적으로 설정

masmic

CameraPreview 예제 API 데모를 사용하고 있습니다. SurfaceView를 오버레이하는 일부보기 (버튼 등)를 추가해야합니다.

이를 위해 매개 변수를 설정하려고하지만 화면 왼쪽 상단에 항상 나타납니다.

다음은 코드의 onCreate 메소드입니다.

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);

        btnTakePhoto = new Button(this);
        btnTakePhoto.setBackgroundResource(android.R.drawable.ic_menu_camera);


        /*Set container*/
        mPreview = new Preview(this);
        setContentView(mPreview);

        /*Set button params and add it to the view*/
        RelativeLayout.LayoutParams buttonParams = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
        buttonParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
        buttonParams.addRule(RelativeLayout.CENTER_VERTICAL);
        addContentView(btnTakePhoto, buttonParams);


        numberOfCameras = Camera.getNumberOfCameras();

        CameraInfo cameraInfo = new CameraInfo();
        for (int i = 0; i < numberOfCameras; i++) {
            Camera.getCameraInfo(i, cameraInfo);
            if (cameraInfo.facing == CameraInfo.CAMERA_FACING_BACK) {
                defaultCameraId = i;
            }
        }
    }

여기에있는 가치는

RelativeLayout.LayoutParams buttonParams = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);

변경하면 잘 업데이트됩니다. 변경되지 않는 것은 addRule () 메서드를 포함하는 것입니다.

masmic

마침내 해결되었습니다. setContentView () 및 addContentView ()를 수행 할 때 FrameLayout 인 DecorView에 뷰를 배치했습니다. 따라서 FrameLayout의 경우 LayoutParams의 일반 기능 만 작동하므로 RelativeLayout을 참조하는 LayoutParams는 작동하지 않습니다.

따라서 먼저 relativeLayout을 만들고 매개 변수를 설정 한 다음 콘텐츠로 설정해야합니다.

RelativeLayout relativeLayout = new RelativeLayout(this);
RelativeLayout.LayoutParams rlp = new RelativeLayout.LayoutParams(
                RelativeLayout.LayoutParams.MATCH_PARENT,
                RelativeLayout.LayoutParams.MATCH_PARENT);
setContentView(relativeLayout, rlp);

그러나 이제는 뷰를 추가 할 때마다이 relativeLayout에 다음과 같이 추가해야합니다.

relativeLayout.addView(View, Params);

딱 이것.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

매개 변수 값을 동적 SQL없이 열 이름으로 설정

분류에서Dev

D3 js force 레이아웃 : 링크 매개 변수로 노드 반경 설정

분류에서Dev

jQuery DataTable : dom 매개 변수는 수동으로 설정할 때 레이아웃을 다르게 표시합니다.

분류에서Dev

iOS 8 자동 레이아웃-정사각형보기 4 개를 동적으로 크기 조정

분류에서Dev

Java를 통해 동적으로 테이블 레이아웃 설정

분류에서Dev

레이아웃 xml 파일에서 런타임 레이아웃 매개 변수 설정

분류에서Dev

결정 론적 매개 변수 변동으로 nlrx 시뮬레이션 실행

분류에서Dev

토스트 Android의 레이아웃을 동적으로 수정

분류에서Dev

문자열 매개 변수를 다른 레이아웃으로 전달 MvvmCross

분류에서Dev

Android에서 레이아웃 매개 변수를 설정 한 후 뷰를 업데이트 할시기

분류에서Dev

자동 파이프 라인에 대해 동적으로 매개 변수 값 설정

분류에서Dev

JUnit 이론은 매개 변수를 null로 설정합니다.

분류에서Dev

Vue 경로 매개 변수를 동적으로 업데이트

분류에서Dev

상대적 레이아웃에서 LinearLayout 높이 / 너비를 동적으로 설정

분류에서Dev

뷰를 동적으로 추가하고 매개 변수 및 규칙 설정이 제대로 작동하지 않음 (Android)

분류에서Dev

쿼리 매개 변수를 동적으로 업데이트

분류에서Dev

GET 매개 변수를 기반으로 헤더를 동적으로 결정

분류에서Dev

pydrake URDF 설정 동적 매개 변수

분류에서Dev

일반 매개 변수를 명시 적으로 설정할 필요가없는 이유는 무엇입니까?

분류에서Dev

매번 레이아웃을 변경하지 않고 프레임에 사용자 정의 qt 위젯을 동적으로 추가

분류에서Dev

함수 리터럴의 매개 변수 유형을 동적으로 설정

분류에서Dev

recyclerview 설정 레이아웃 매개 변수의 항목이 잘못되었습니다.

분류에서Dev

테이블 레이아웃을 동적으로 설정

분류에서Dev

Android는 모든 뷰를 동적으로 전체 레이아웃 크기 조정

분류에서Dev

표현식을 통해 SQL 문에서 동적으로 매개 변수 설정

분류에서Dev

쿼리 매개 변수에서 동적으로 등록 ID 설정

분류에서Dev

매개 변수의 "x"수를 함수 속성으로 설정

분류에서Dev

Symfony2에서 매개 변수를 어떻게 동적으로 설정할 수 있습니까?

분류에서Dev

레이아웃에서 개체를 올바르게 설정

Related 관련 기사

  1. 1

    매개 변수 값을 동적 SQL없이 열 이름으로 설정

  2. 2

    D3 js force 레이아웃 : 링크 매개 변수로 노드 반경 설정

  3. 3

    jQuery DataTable : dom 매개 변수는 수동으로 설정할 때 레이아웃을 다르게 표시합니다.

  4. 4

    iOS 8 자동 레이아웃-정사각형보기 4 개를 동적으로 크기 조정

  5. 5

    Java를 통해 동적으로 테이블 레이아웃 설정

  6. 6

    레이아웃 xml 파일에서 런타임 레이아웃 매개 변수 설정

  7. 7

    결정 론적 매개 변수 변동으로 nlrx 시뮬레이션 실행

  8. 8

    토스트 Android의 레이아웃을 동적으로 수정

  9. 9

    문자열 매개 변수를 다른 레이아웃으로 전달 MvvmCross

  10. 10

    Android에서 레이아웃 매개 변수를 설정 한 후 뷰를 업데이트 할시기

  11. 11

    자동 파이프 라인에 대해 동적으로 매개 변수 값 설정

  12. 12

    JUnit 이론은 매개 변수를 null로 설정합니다.

  13. 13

    Vue 경로 매개 변수를 동적으로 업데이트

  14. 14

    상대적 레이아웃에서 LinearLayout 높이 / 너비를 동적으로 설정

  15. 15

    뷰를 동적으로 추가하고 매개 변수 및 규칙 설정이 제대로 작동하지 않음 (Android)

  16. 16

    쿼리 매개 변수를 동적으로 업데이트

  17. 17

    GET 매개 변수를 기반으로 헤더를 동적으로 결정

  18. 18

    pydrake URDF 설정 동적 매개 변수

  19. 19

    일반 매개 변수를 명시 적으로 설정할 필요가없는 이유는 무엇입니까?

  20. 20

    매번 레이아웃을 변경하지 않고 프레임에 사용자 정의 qt 위젯을 동적으로 추가

  21. 21

    함수 리터럴의 매개 변수 유형을 동적으로 설정

  22. 22

    recyclerview 설정 레이아웃 매개 변수의 항목이 잘못되었습니다.

  23. 23

    테이블 레이아웃을 동적으로 설정

  24. 24

    Android는 모든 뷰를 동적으로 전체 레이아웃 크기 조정

  25. 25

    표현식을 통해 SQL 문에서 동적으로 매개 변수 설정

  26. 26

    쿼리 매개 변수에서 동적으로 등록 ID 설정

  27. 27

    매개 변수의 "x"수를 함수 속성으로 설정

  28. 28

    Symfony2에서 매개 변수를 어떻게 동적으로 설정할 수 있습니까?

  29. 29

    레이아웃에서 개체를 올바르게 설정

뜨겁다태그

보관