안드로이드 imagebutton margin programmatically 제거하는법


GridLayout gameBoard = (GridLayout)findViewById(R.id.gridLayout);

    for (int rowCounter = 0; rowCounter < DIMENSION; rowCounter++)
        for (int columnCounter = 0; columnCounter < DIMENSION; columnCounter++) {

            LinearLayout rl = new LinearLayout(this);
            GridLayout.LayoutParams paramsL = new GridLayout.LayoutParams();

            paramsL.setMargins(0, 0, 0, 0);
            rl.setLayoutParams(paramsL);
            rl.getLayoutParams().height = (int) getResources().getDimension(R.dimen.imageButton_height);
            rl.getLayoutParams().width = (int) getResources().getDimension(R.dimen.imageButton_width);
            ((ViewGroup.MarginLayoutParams)rl.getLayoutParams()).leftMargin = 0;


            WampusState state = new WampusState(rowCounter,columnCounter);
            state.imgbtn = new ImageButton(this);
            state.imgbtn.setImageResource(R.drawable.bar_back);

           state.imgbtn.setScaleType(ImageView.ScaleType.FIT_CENTER);

            LinearLayout.LayoutParams params = new LinearLayout.LayoutParams
                    (ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
            state.imgbtn.setLayoutParams(params);
            params.setMargins(0, 0, 0, 0);

 rl.addView(state.imgbtn);

                gameBoard.addView(rl);
}

다음과 같이 실행하면

이미지

리니어 레이아웃에 이미지버튼이 들어가는데 상하좌우 마진이 생깁니다. 이마진 제거 할 방법을 알려주세요


조회수 154


1 답변


GridLayout에서 추가한 마진(또는 패딩)일 수 있습니다. 다음 글을 참고하셔서 GridLayout의 설정을 조정해보세요.


로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close