我有一个多行TextView在AlertDialog中显示文本。 它是可滚动的,但是我无法显示滚动条,这会带来用户不知道当前显示的内容下面有更多信息的风险。

我已经在StackOverflow中遵循了很多示例,但是到目前为止都还没有成功。

这是我的代码:

private void showLookupDetailsDialog(String[] headings, String key, String value) {

final TextView tv = new TextView(this);

String[] valueArray = {};

valueArray = value.split(";");

String displayString = "";

if (valueArray.length > 1) {

for (int i = 0; i < valueArray.length - 1; i++) {

displayString = displayString + valueArray[i] + "\n";

}

} else {

displayString = valueArray[0];

}

tv.setText(displayString);

tv.setGravity(Gravity.CENTER);

tv.setTextSize(40);

tv.setMaxLines(5);

tv.setScroller(new Scroller(this));

tv.setVerticalScrollBarEnabled(true);

tv.setMovementMethod(new ScrollingMovementMethod());

tv.setScrollBarStyle(View.SCROLLBARS_INSIDE_INSET);

new AlertDialog.Builder(this)

.setTitle(headings[0] + ": " + key)

.setMessage(headings[1] + ": ")

.setView(tv)

.setPositiveButton("OK", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) {

}

})

.show();

}

这是UI中的示例: 69dc08f9bb201144ef1d03239f0823b4.pngf6b0ab4e03135969af54de35e25d41f2.png

干杯。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐