我正在动态地将视图放入RelativeLayout。目前,我正在做:
layoutParams = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
layoutParams.setMargins(0, position, 0, 0);
relativeLayout.addView(textViewInstance, layoutParams);
其中position
在每个TextView
对象添加到布局后增加一个固定的数量。问题是一些TextView
包含长字符串,这使得屏幕尺寸较小的设备上的格式化很麻烦,因为字符串会溢出到多行并渗入空白区域。
我是否可以通过相对于TextViews
上方TextView
的间距添加这些layoutParams = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
layoutParams.setMargins(0, previousTextViewInstance.bottomPixel + 50, 0, 0);
relativeLayout.addView(textViewInstance, layoutParams);
?我希望达到以下效果:
previousTextViewInstance
在添加每个新TextView
后,{}保存rdd_row
。
这可能吗?
答案 0 :(得分:1)
您可以在相对布局中动态添加前一个视图下方的每个视图,而不是为每个视图设置边距。
为此,首先为每个textView设置一个id。
firstTextView.setId(textView_id_1);
在添加第二个textView时,将布局参数的规则设置为:
layoutParams.addRule(RelativeLayout.BELOW, textView_id_1);
secondTextView.setLayoutParams(layoutParams);
secondTextView.setId(textView_id_2);