我正在创建一个Android应用程序,用于显示我所在城市可用的所有服务的联系方式。我在我的城市导航应用中使用抽屉。但是具有较长文本(例如Adress)的TextView会退出屏幕。所以请帮助我,以便TextView适合在屏幕上。 以下是我的活动代码:
split(dataset["vari.pred"])
答案 0 :(得分:1)
将此添加到TextView&#39>
android:ellipsize="end"
android:maxLines="1"
这样做,如果你的文字很长,它会以点的形式显示。 例如:Nadim Shaikh将是Nadim SH ......
答案 1 :(得分:1)
将以下属性添加到TextView
元素:
android:layout_width="0dp"
android:layout_gravity="fill_horizontal"
这将使TextView
s填充单元格的宽度,而不是更远。
答案 2 :(得分:-1)
在android中执行此类操作的最佳方法是在运行时使用html ...
例如在xml中只需将WebView保留在Relative布局中..
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<WebView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/web"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_alignParentTop="true"/>
</RelativeLayout>
java代码中的执行此操作:
String name="...",address="...";
Webview web = (WebView)findViewById(R.id.web);
String html = "<html>\n" +
"<body>\n" +
"<h4>Name:</h4>" + //name as heading
name + // here the name you like to add
"\n" +
"<hr>" +
"<h4>address</h4>" + //address as heading
address + //here the address you like to add
"\n" +
"<hr>" + //line
"</body>\n" +
"</html>";
//in this same way you can add as many items you want
web.loadData(html, "text/html; charset=UTF-8", null);
我知道你希望通过在xml中使用一些布局来实现这一点,但我相信这是最好的方法,因为在这种情况下你也可以做出更好的设计.. 在运行时,您可以根据需要添加姓名,地址和联系人。