0

我需要以編程方式將ImageView對齊到LinearLayout的底部。以編程方式將ImageView對齊到LinearLayout

我當然已經嘗試添加ImageView作爲LinearLayout的子項,但圖像會縮小(因爲LinearLayout小於圖像),並且我需要圖像不能調整大小,對齊。

我也試過這樣:

RelativeLayout main_layout = (RelativeLayout) view.findViewById(R.id.main_layout); 
    LinearLayout line_0_layout = (LinearLayout) view.findViewById(R.id.line_0_layout); 

    ImageView horse_img = new ImageView(getActivity()); 
    horse_img.setImageResource(R.drawable.horse); 

    RelativeLayout.LayoutParams layout_params = new RelativeLayout.LayoutParams(
      RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
    layout_params.addRule(RelativeLayout.ALIGN_BOTTOM, line_0_layout.getId()); 

    horse_img.setLayoutParams(layout_params); 
    main_layout.addView(horse_img); 

,但它不工作:將圖像添加到視圖,但不對齊的LinearLayout。

這似乎很簡單的問題,但事實並非如此。

在此先感謝您的幫助。

+0

'line_0_layout'是'main_layout'的子元素嗎?因爲您發佈的代碼只能在這種情況下才能使用。 ALIGN_BOTTOM被定義爲將孩子的底部邊緣與另一個孩子的底部邊緣對齊的規則。如果'horse_img'和'line_0_layout'不共享'RelativeLayout'父項,我不認爲(但我不確定)你想要做什麼。 –

回答

0
layout_params.addRule(RelativeLayout.BELOW, line_0_layout.getId()); 
+0

謝謝,但這會將ImageView對齊到主佈局的底部,而不是對齊line_0_layout佈局的底部。編輯了 – thomaus

+0

。試試這個樣品 – Autocrab

+0

也沒有運氣。佈局未固定在line_0_layout佈局上。 – thomaus

相關問題