tôi sử dụng mã này để lập trình Android (Java):nút AlertDialog align để tập trung
public static MessageBoxResult showOk(
Context context, String title, String message, String okMessage)
{
okDialogResult = MessageBoxResult.Closed;
// make a handler that throws a runtime exception when a message is received
final Handler handler = new Handler()
{
@Override
public void handleMessage(Message mesg)
{
throw new RuntimeException();
}
};
AlertDialog.Builder alert = new AlertDialog.Builder(context);
alert.setTitle(title);
alert.setMessage(message);
alert.setPositiveButton(okMessage, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
okDialogResult = MessageBoxResult.Positive;
handler.sendMessage(handler.obtainMessage());
}
});
AlertDialog dialog = alert.show();
// align button to center
Button b = (Button) dialog.findViewById(android.R.id.button1);
b.setGravity(Gravity.CENTER_HORIZONTAL);
// loop till a runtime exception is triggered.
try { Looper.loop(); }
catch(RuntimeException e2) {}
return okDialogResult;
}
Vấn đề của tôi là như thế nào làm cho trung tâm nút? Như bạn thấy, tôi cố gắng căn chỉnh nút để cnenter bằng cách sử dụng Gravity.CENTER_HORIZONTAL
(cũng .CENTER
) nhưng không có gì thay đổi. Nút gần như ở đúng vị trí.
tham khảo 'positiveBtn' là gì? – t0m
Điều này thực sự có hiệu quả không? – zygimantus
Không hoạt động trên Android 7.1.1 nhưng giải pháp @Scott Brown bên dưới chỉ hoạt động tốt. – mtronics