2013-04-04 67 views
0

我在3个文本视图中以水平方向在JAVA文件中给出3个句子,但只有2个文本视图只有2个句子是comin,但第三句由于移动的分辨率而消失。我的查询是如何从第二行的开始位置开始,而不是最后一行,从第三行开始。JAVA中的Android流布局

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

看不到第三TextView的原因是,你的布局具有水平方向和而前两个TextView小号适合屏幕尺寸,第三个是越来越外推。

要解决这个问题,你可以做以下几个步骤:

1.改变你的布局方向在XML或Java文件,这样垂直TextView会出现一个接一个垂直后。

2.如果你想保持一个以上的TextView连续,那么你还是应该设置您的主要布局方向为垂直,但对于TextView每一行的创建与使用代码水平方向新布局并将TextView添加到此布局。

LinearLayout tvRow = new LinearLayout(); 
tvRow.addView(firstTextView); 
tvRow.addView(secondTextView); 

最后这个布局添加到您的主要布局:

mailLayout.addView(tvRow);