Câu trả lời:
Đúng:
RelativeLayout.LayoutParams params= new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,ViewGroup.LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.BELOW, R.id.below_id);
viewToLayout.setLayoutParams(params);
Đầu tiên, mã tạo ra một tham số bố cục mới bằng cách chỉ định chiều cao và chiều rộng. Các addRulephương pháp bổ sung tương đương với xml đúng android:layout_below. Sau đó, bạn chỉ cần gọi View#setLayoutParamsvào chế độ xem bạn muốn có các thông số đó.
Ngoài ra, bạn có thể sử dụng các tham số bố cục hiện tại và sửa đổi chúng:
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) viewToLayout.getLayoutParams();
params.addRule(RelativeLayout.BELOW, R.id.below_id);
LayoutParamsthay vì tạo ra những cái mới. Trong thực tế, điều này nên được chấp nhận là câu trả lời chính xác.
Trong khi câu trả lời @jackofallcode là chính xác, nó có thể được viết thành một dòng:
((RelativeLayout.LayoutParams) viewToLayout.getLayoutParams()).addRule(RelativeLayout.BELOW, R.id.below_id);
LayoutParamsđể thiết lập chúng vớisetLayoutParams