我有一个好主意,可以从下面的链接中找到AlertDialog消息的文本:
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("My Title");
builder.setMessage("CoderzHeavennHeaven of all working codes.");
builder.setPositiveButton("OK", null);
AlertDialog dialog = builder.show();
TextView messageText = (TextView)dialog.findViewById(android.R.id.message);
messageText.setGravity(Gravity.CENTER);
这对于消息文本非常有效。
如果我为标题尝试相同,它会给我null。 我如何为标题做什么呢?它为什么做什么?
TextView messageText = (TextView)dialog.findViewById(android.R.id.title);
messageText.setGravity(Gravity.CENTER);
如果我添加列表项并对列表项尝试相同,它会给我null。 如何为列表项做同样的事情并为它做什么?
String[] listAryVar = {"Edit", "Renam", Delete"};
builder.setItems(listAryVar, new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface DlgPsgVar, int which)
{
// |==| |* CodTdo *|
}
})
ListView messageText = (ListView)dialog.findViewById(android.R.id.list);
messageText.getCount());
尝试2:如果我执行如下操作,代码会运行,但文本仍然保持对齐状态。
ListView dialogListView = dialog.getListView();
for(int i=0; i < dialogListView.getCount(); i++)
{
TextView textView = (TextView)dialogListView.getAdapter().getView(i, null, dialogListView);;
textView.setGravity(Gravity.CENTER);
}
我知道我们使用自定义视图并设置该视图。但我觉得我们甚至可以改变内置视图。因为在android中我们可以做任何事情。
答案 0 :(得分:0)
您可以尝试使用自定义提醒对话框
<强> custom_alert_dialog.xml 强>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#fff"
android:padding="5dp">
<TextView
android:id="@+id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="this is title"
android:gravity="center_horizontal"
android:textColor="#000"
android:textStyle="bold" />
<TextView
android:id="@+id/message"
android:layout_below="@+id/title"
android:layout_marginTop="20dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:text="this is message"
android:gravity="center_horizontal"
android:textColor="#000"
android:textStyle="bold" />
</RelativeLayout>
然后在您的活动中
AlertDialog.Builder customAlert = new AlertDialog.Builder(MainActivity.this);
View viewDialog = LayoutInflater.from(MainActivity.this).inflate(R.layout.custom_alert_dialog, null);
customAlert.setView(viewDialog);
TextView title = (TextView) viewDialog.findViewById(R.id.title);
TextView message = (TextView) viewDialog.findViewById(R.id.message);
title.setText("this is title");
message.setText("this is message");
customAlert.create();
customAlert.show();
你会得到这样的东西