我只是想以某种方式在我的线性布局中添加一个新行:
layout = (LinearLayout) findViewById (R.id.layout);
... //some other code where I've appended some strings already
final TextView nline = new TextView(this);
nline.setText(Html.fromHtml("<br>")); //i also tried: nline.setText("\n");
layout.addView(nline);
但这只是增加了几个空格。有人可以帮我吗?感谢。
答案 0 :(得分:27)
首先,您需要将TextView
设为多行。然后使用简单的"\n"
字符串进行换行。
final TextView nline = new TextView(this);
nline.setSingleLine(false);
nline.setText("first line\n"+"second line\n"+"third line");
答案 1 :(得分:18)
如果您只想在其他两个视图之间留一些空白,可以在XML中执行此操作(假设您使用XML进行布局)。像这样的东西可以工作,基本上放入一个透明背景和给定高度的视图。这假设你在TextViews中有任何你想要的参数。
<TextView />
<View android:background="#00000000"
android:layout_height="12dp" //or whatever density pixel height you want
android:layout_width="fill_parent" />
<TextView />
另外,在你上面尝试的内容中......你可以尝试一个空格和换行符......这可能有效。
nline.setText(" \n");
答案 2 :(得分:2)
您可能需要使用TextView的setInputType()方法将InputType设置为TYPE_TEXT_FLAG_MULTI_LINE
tv.setInputType(tv.getInputType()|InputType.TYPE_TEXT_FLAG_MULTI_LINE);
您也可以在其他视图上设置一些边距/填充。我认为TextViews不应该被误用作间隔符。
答案 3 :(得分:0)
简单如下:
String hello = getResources.getString(R.string.hello);
String world = getResources.getString(R.string.world);
textView.setText(hello + "\n" + world);
答案 4 :(得分:0)
简单地给予&#34; \ n&#34;数据以新行显示
txtView.setText("Latitude :" + latitude + "\nLongitude :" + longitude);