一种方法喊得问题是一个属性添加到TextView中即会无需添加代码即可滚动:
android:lines="3"
android:textIsSelectable="true"
android:fadeScrollbars="false"
这是Android Dev Relations团队成员在办公时间提出的建议。但是,在测试时,scroll在Android 2.2.2版上无法使用。我的新解决方案是声明textview可点击并使用onClick回调来打开对话框。
所以,现在我省略了文本(没有更多的滚动标签),让用户清楚地指示文本被切断。下面是XML:
android:lines="3"
android:clickable="true"
android:onClick="showDef"
android:ellipsize="start"
android:isScrollContainer="false"
和这里是showDef方法:
public void showDef(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("same text as was set in the text view")
.setCancelable(false)
.setNegativeButton("Clear", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});
AlertDialog alert = builder.create();
alert.show()
我喜欢这个解决方案比在含有TextView的视图组具有固定大小的情况下简单滚动要好。我希望它也适用于你。
我有点困惑。为什么不只是出现在多行? – mtmurdock
另一个建议可能是做一个自动缩放的TextView: http://stackoverflow.com/questions/5033012/auto-scale-textview-text-to-fit-within-bounds – Pablo