我有一個用ImageView和TextView的RelativeLayout。我想要在ImageView下面的TextView(帶有一個小填充),並且ImageView和TextView都對齊到RelativeLayout的中心。RelativeLayout與ImageView和TextView - 對齊下面的ImageView的TextView,兩者都以編程方式在RelativeLayout中心
的RelativeLayout的是一個編程
加我已閱讀SO關於對準了一些問題,但是,我不能讓他們爲我工作。下面是我當前的代碼...
代碼的RelativeLayout
RelativeLayout relativeLayout = new RelativeLayout(this);
代碼ImageView的
ImageView image = new ImageView(this);
RelativeLayout.LayoutParams lpImage = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
lpImage.addRule(RelativeLayout.CENTER_IN_PARENT);
//Setting the parameters on the Image
image.setLayoutParams(lpImage);
//adding imageview to relative layout
relativeLayout.addView(image);
代碼的TextView
TextView textview = new TextView(this);
RelativeLayout.LayoutParams lpTextView = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
lpTextView.addRule(RelativeLayout.BELOW, image.getId());
//Setting the parameters on the TextView
textview.setLayoutParams(lpTextView);
//Adding TextView to relative layout
relativeLayout.addView(textview);
如果我設置RelativeLayout.CENTER_IN_PARENT
兩個圖像和文本,它們相互重疊,這是可以理解的,因爲RelativeLayout支持overlapp意見。
我認爲爲textview設置RelativeLayout.BELOW
會使它自己在圖像下面對齊,但事實並非如此。我甚至試過RelativeLayout.ALIGN_BOTTOM
爲textview,但即使這不起作用。
我將測試這兩個佈局,並會回覆給你.. –
我得到它使用LinearLayout方法的工作。感謝你的回答。但是,有一個小的改變..而不是在layoutparams中使用Gravity.CENTER,使用linearLayout.setGravity(Gravity.CENTER)爲我工作。請相應地更改您的答案。謝謝..答覆接受。 –
@VamsiChalla感謝編輯的信息。 – Hariharan