【问题标题】:Dialog content style对话框内容样式
【发布时间】:2016-12-28 18:29:34
【问题描述】:

我有 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);

我带了一个适配器来显示我的对话框的内容,结果:

这件商品对我来说尺寸很大,我该如何更改它们的尺寸?

回答

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

【问题讨论】:

  • 我试过了,但是这个改变只是动作按钮中的文本大小

标签: android dialog styles


【解决方案1】:

您可以完全自定义文本, 试试下面的代码-

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

会为你工作:)

【讨论】:

  • 这适用于标题。我可以按照我的风格做到这一点。但我的问题是我无法通过适配器更改尺寸项目。
  • 适配器?你没有提到任何适配器。你能详细说明你到底想做什么吗?
  • 请发布适配器内容代码或请修改单选按钮的宽度和高度..我认为您的问题是更改 RB 中文本的大小。实际上您不能这样做 bcz 即大小是RB的内置功能所以尝试改变RB的W和H。
  • 我解决了我的问题,我使用我的自定义布局作为适配器 :) 谢谢你推向了正确的方向 ;)
【解决方案2】:

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

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

【讨论】:

  • 这适用于标题。我可以按照我的风格做到这一点。但我的问题是我无法通过适配器更改尺寸项目
  • 但您没有提到适配器?请使用完整和必需的信息编辑问题以回答您的问题。
猜你喜欢
  • 1970-01-01
  • 2015-07-22
  • 1970-01-01
  • 2016-12-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-14
相关资源
最近更新 更多