我创建了一个警报对话框,我想知道如何将消息的重力设置为中心:
Dialog dialog;
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage(completedMessage());
dialog = builder.create();
这里是 completedMessage() 方法:
private String completedMessage() {
String[] messages = getResources().getStringArray(R.array.success);
String completeMsg = "\n";
int messagei= (int) Math.floor(Math.random() * messages.length);
completeMsg += messages[messagei];
return completeMsg;
这是 arrays.success:
<string-array name="success">
<item>You got it!</item>
<item>Success!</item>
<item>Done!</item>
<item>Great job, young Padawan.</item>
</string-array>
没有标题,没有按钮,没有列表,只有消息,我想将它居中显示,无论字符串长度如何。
我试过:
Dialog dialog;
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage(completedMessage());
dialog = builder.show();
TextView messageView = (TextView)dialog.findViewById(android.R.id.message);
messageView.setGravity(Gravity.CENTER_VERTICAL);
但这并没有改变什么。
顺便说一下,消息在框中的显示就像在顶部和左侧有填充,但在底部和右侧都没有填充。
最佳答案
试试这个
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("My Title");
builder.setMessage("your message");
builder.setPositiveButton("OK", null);
AlertDialog dialog = builder.show();
TextView messageText = (TextView)dialog.findViewById(android.R.id.message);
messageText.setGravity(Gravity.CENTER);
dialog.show();
关于android - 在默认的 AlertDialog 中居中消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28410231/