我在JAVA文件中以水平方向给出3个文本视图中的3个句子,但只有2个文本视图只有2个句子是comin但是由于移动设备的分辨率,第三个句子消失了。我的查询是如何从第二行的起始位置获取第三个文本视图,而不是在最后一行。
public class MainActivity extends Activity {
private LinearLayout layout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById();
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
layoutParams.setMargins(10, 15, 10, 10);
TextView tvTextsecond = new TextView(this);
tvTextsecond.setText("Heywhatrudoingtoday");
tvTextsecond.setLayoutParams(layoutParams);
tvTextsecond.setBackgroundColor(Color.RED);
tvTextsecond.setTextColor(Color.WHITE);
//tvTextsecond.setSingleLine(true);
layout.addView(tvTextsecond);
TextView tvTextthird = new TextView(this);
tvTextthird.setText("Haiitssundaytowork");
tvTextthird.setLayoutParams(layoutParams);
tvTextthird.setBackgroundColor(Color.BLUE);
tvTextthird.setTextColor(Color.WHITE);
//tvTextthird.setSingleLine(true);
layout.addView(tvTextthird);
TextView tvTextfourth = new TextView(this);
tvTextfourth.setText("Owebullshitruuselessfellow");
tvTextfourth.setLayoutParams(layoutParams);
tvTextfourth.setBackgroundColor(Color.YELLOW);
tvTextfourth.setTextColor(Color.WHITE);
//tvTextfourth.setSingleLine(true);
layout.addView(tvTextfourth);
}
private void findViewById() {
layout = (LinearLayout) findViewById(R.id.flowLayout);
}
}
答案 0 :(得分:0)
您没有看到第三个TextView
的原因是您的布局具有水平方向,而前两个TextView
适合屏幕尺寸,第三个被推到外面。
要解决此问题,您可以执行以下几个步骤:
1。在XML或java文件中将布局方向更改为垂直方向,TextView
将一个接一个地垂直显示。
2。如果您希望连续保留多个TextView
,那么您仍应将主要布局方向设置为垂直,但对于{{1}的每一行使用代码创建一个水平方向的新布局,并将TextView
添加到此布局。
TextView
最后将此布局添加到主布局:
LinearLayout tvRow = new LinearLayout();
tvRow.addView(firstTextView);
tvRow.addView(secondTextView);