创建一个两列的行

时间:2012-01-20 02:24:11

标签: android android-layout

我在创建两列行时遇到困难。我的要求是第一列占据空间的80%,第二列占20%。

第一列文本可能很长,在这种情况下它应该环绕但保持在80%的空间内。第二列更容易,它总是保持短,不需要包装。但我希望第二列始终在中心垂直对齐,无论第一列包裹多少次。

我该怎么做?

这是我到目前为止所拥有的。我需要改进这一点,以便第二列文本在顶部垂直对齐,第二列水平对齐到右边

LinearLayout m_panel = new LinearLayout (this);
m_panel.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
m_panel.setOrientation(LinearLayout.VERTICAL);

LinearLayout row_panel = new LinearLayout (m_panel.getContext());                           
row_panel.setWeightSum(1.0f);
LinearLayout.LayoutParams lp = new    LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT);
lp.setMargins(2,8,1,8);
row_panel.setLayoutParams(lp);
row_panel.setOrientation(LinearLayout.HORIZONTAL);


TextView subjectName = new TextView(middlePanel.getContext());
subjectName.setLayoutParams(new     LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT, 0.2f));
subjectName.setText(someText);                              
row_panel.addView(subjectName);

TextView size = new TextView(middlePanel.getContext());     
LinearLayout.LayoutParams lp2 = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT, 0.8f);
size.setLayoutParams(lp2);

size.setText(sometext);

row_panel.addView(size);

0 个答案:

没有答案