我需要在警报对话框中显示多行消息,而不仅仅是一个段落。
new AlertDialog.Builder(this)
.setTitle("Place")
.setMessage("Go there" +
"Go here")
.setNeutralButton("Go Back", null)
.show();
有没有办法从新线开始?就像在Microsoft Word中的句子后输入?
答案 0 :(得分:13)
对此没有任何保证,但通常会做多行,例如:
.setMessage("Go there\nGo here");
“\ n”是一个转义字符,意思是“新行”我不知道你的具体情况,但你可以在几乎所有的AFAIK中使用它。
答案 1 :(得分:4)
在字符串中使用“\ n”标记:
new AlertDialog.Builder(this)
.setTitle("Place")
.setMessage("Go there" + "\n" +
"Go here")
.setNeutralButton("Go Back", null)
.show();
答案 2 :(得分:0)
您是否尝试过回车符或换行符?它们分别是字符10和13(特殊字符\ n和\ r,或\ u000a和\ u000d)
答案 3 :(得分:0)
我认为最好的解决方案是避免断行并使用自定义视图组件。
describe("Basic promise test", () => {
it("should trigger .then function", () => {
var mock = jasmine.createSpy('some method');
var promise = new Promise((resolve, reject)=> {
console.log("inside Promise");
resolve('something');
console.log("done!");
});
promise.then(mock);
promise.then(function () { //neither works!
mock();
console.log("resolved"); //code does reach here but only after test fails
});
expect(mock).toHaveBeenCalled();
});
});
使用此解决方案,如果您想使用AlertDialog.Builder builder = new AlertDialog.Builder(this);
TextView tw =new TextView(this);
tw.setMaxLines(10);
tw.setPadding(3,3,3,3);
tw.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
tw.setSingleLine(false);
tw.setText("ver long messagge \n with break line \n");
builder.setView(tw);
,则可以中断该行,但如果您不这样做,则文本将包含在多行上(因为我设置了\n
)。< / p>