对话框内容风格

时间:2016-08-22 09:15:13

标签: android dialog styles

我有SingleChoiceItems对话框:

AlertDialog.Builder builder = new AlertDialog.Builder(new ContextThemeWrapper(getActivity(), R.style.AlertDialogCustom));
builder.setTitle("Выберите статус:")
        .setSingleChoiceItems(mStatusesAdapter, 0, null)
        .setPositiveButton("Подтвердить", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {

            }
        })
        .setNegativeButton("Отмена", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {

            }
        });
builder.show();

在这个对话框中,我使用我的风格,在那里我可以管理标题,动作等。

<style name="AlertDialogCustom" parent="@android:style/Theme.Material.Light.Dialog.Alert" tools:targetApi="lollipop">
</style>

但是我无法在对话框中管理我的内容。如何更改内容大小?

感谢。

更新

我解释了我的问题。

.setSingleChoiceItems(mStatusesAdapter, 0, null)

适配器代码:

private ArrayList<Status> mStatuses;
private ArrayAdapter<String> mStatusesAdapter;

private class LoadInfoModel{
public ArrayList<Status> statuses;
}

loadInfoModel.statuses = DataGetHelpers.GetStatuses();

mStatuses = loadInfoModel.statuses;
    ArrayList<String> statusesTitles = new ArrayList<>();

    for (int i = 0; i < mStatuses.size(); i++){
    statusesTitles.add(mStatuses.get(i).StatusTitle);
    }
    mListViewStatuses = new ListView(getActivity());
    mStatusesAdapter = new ArrayAdapter<String>(getActivity(), android.R.layout.select_dialog_singlechoice, statusesTitles);
    mListViewStatuses.setAdapter(mStatusesAdapter);

我带一个适配器来显示我的对话框的内容,结果如下: enter image description here

这个项目对我来说很大,我怎么能改变它们的大小?

答案

只需要在适配器中使用自定义布局设置文本大小。

2 个答案:

答案 0 :(得分:1)

您可以完全自定义文字, 尝试以下代码 -

TextView title =  new TextView(context);
        title.setText("ALERT TITLE");
        title.setTextSize(50);
        title.setBackgroundColor(Color.GRAY);
        title.setTextColor(Color.WHITE);
    builder.setCustomTitle(title);

适合你:)

答案 1 :(得分:0)

尝试这样更改标题内容......

AlertDialog dialog = new AlertDialog.Builder(this).setMessage("Hello world").show();
TextView textView = (TextView) dialog.findViewById(android.R.id.message);
textView.setTextSize(40);