2012-06-09 3 views
0

친절하게 확인하십시오.동적 상대 레이아웃 문제입니다.

RelativeLayout layout = new RelativeLayout(this); 

    ImageView item = new ImageView(this); 
    item.setImageResource(R.drawable.invite); 
    item.setAdjustViewBounds(true); 

    RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
    params.addRule(RelativeLayout.ALIGN_LEFT, RelativeLayout.TRUE); 
    item.setLayoutParams(params); 
    item.setId(mIconIdCounter); 
    layout.addView(item, params); 
    params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
    params.addRule(RelativeLayout.BELOW, item.getId()); 

    TextView tv1=new TextView(getApplicationContext()); 
    tv1.setText("Invite"); 
    tv1.setTextSize(15); 
    tv1.setId(2); 
    params.addRule(RelativeLayout.BELOW, item.getId()); 
    layout.addView(tv1, params); 

    params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
    params.addRule(RelativeLayout.RIGHT_OF, item.getId()); 

    ImageView item2 = new ImageView(this); 
    item2.setImageResource(R.drawable.logout); 
    item2.setAdjustViewBounds(true); 
    item2.setLayoutParams(params); 
    item2.setId(3); 
    layout.addView(item2, params); 

    params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
    params.addRule(RelativeLayout.BELOW, item2.getId()); 
    params.addRule(RelativeLayout.RIGHT_OF, item.getId()); 
    TextView tv2=new TextView(getApplicationContext()); 
    tv2.setText("Logout"); 
    tv2.setTextSize(15); 
    tv2.setId(4); 
    params.addRule(RelativeLayout.BELOW, item2.getId()); 
    layout.addView(tv2, params); 


    params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
    params.addRule(RelativeLayout.ALIGN_PARENT_TOP, RelativeLayout.TRUE); 
    ImageView item3 = new ImageView(this); 
    item3.setImageResource(R.drawable.fbplaceholder); 
    item3.setAdjustViewBounds(true); 
    item3.setLayoutParams(params); 
    item3.setId(5); 
    layout.addView(item3, params); 

여기에서 itemview Imageview를 itemview의 item3으로 설정해야합니다. 그러나 그것을 할 수 없습니다. 이 코드 item3은 중복되는 항목입니다. 항목을 imageview 상단에 설정해야합니다. 내가 잘못 가고있는 곳을 알려주세요. 사전에

감사 Gaurav 굽타 마지막에 항목을 추가하고 항목이 PARAMS에 따라 중복 상대 레이아웃 그대로

답변

0

첫 번째 요소로 항목 3을 추가하려고

(항목 params)이 params.addRule (RelativeLayout.BELOW, item3.getId));