마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

RelativeLayout.BELOW 가 먹히질 않습니다...

0 추천
동적으로 이미지뷰를 만들고 이미지뷰 밑에 LinearLayout을 추가하려고 합니다만

id을 못얻는지 below가 안먹히네요... 아래는 제가 짠 소스입니다...보기쉽게 기존틀만 썼습니다...

 

// RelativeLayout 생성

rl[pos] = new RelativeLayout(this);

 

// ImageView 생성

image[pos] = new ImageView(this);

image[pos].setBackgroundColor(Color.RED);

 

// params 생성

RelativeLayout.LayoutParams ll_params = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);

ll_params.addRule(RelativeLayout.BELOW, image[pos].getId());

 

// 레이아웃 생성

linear[pos] = new LinearLayout(this);

linear[pos].setLayoutParams(ll_params);

 

// addView

linear[pos] .addView(image[pos]);

rl[pos] .addView(linear[pos]);

 

RelativeLayout 생성 -> ImageView 생성 -> LinearLayout 생성 -> LinearLayout에 ImageView 담기 -> RelativeLayout에 LinearLayout 담기   

이런식으로 짰는데 LinearLayout이 ImageView 밑으로 내려가질 않네요.... 생성 순서가 문제가 있는건지....

쉽게 썼다고 썼는데  보기 어려워보이네요...ㅠㅠ 몇시간동안 막혀서 이렇게 질문올립니다 꼭좀 부탁드릴게요 ㅠ
아직도초보 (3,030 포인트) 님이 2013년 8월 8일 질문

1개의 답변

+1 추천
 
채택된 답변
당연히 안 먹죠.

 

ImageView 의 id 를 설정하지 않았잖아요.

 

resource 에 id 만 별도로 생성해서 사용하세요 :)
NoBrain (1,590 포인트) 님이 2013년 8월 8일 답변
아직도초보님이 2013년 8월 8일 채택됨
아하....굳이 레이아웃에서 생성안해줘도 getId로 가져올수 있을줄 알았습니다 ㅠㅠ 그렇게는 안되는거였군요...
...