android6.0 主题,Android 6.0 DatePickerDialog主题

似乎任何使用Marshmallow(

Android 6.0)的人都无法在我的应用程序中使用DatePicketDialog.似乎遇到了某种我遇到的主题问题.我使用DialogFragment,它包含一个DatePicketDialog供用户选择生日.以下是Android 5.x和6.x的DialogFragment镜头.

d6104db8af5093d3004e1a16a0804b94.png

c25c39393d4f29b134d2794ee1946bcd.png

我试图在DatePickerDialog构造函数中添加一个主题,但这使得DialogFragment全屏,我不希望这样.有谁知道我怎么能让DatePickerDialog看起来像是在Marshmallow之前?

更新1

这是我创建DialogFragment的代码:

DialogFragment ageFragment = new DatePickerDialogFragment();

ageFragment.show(getFragmentManager(), "datePicker");

这是DatePickerDialogFragment中的onCreateDialog:

@Override

public Dialog onCreateDialog(Bundle savedInstanceState) {

// Use the current date as the default date in the picker if no filters are set

Calendar cal = Calendar.getInstance();

// Set the date 18 years previous, since only 18 and older are allowed on the app

cal.add(Calendar.YEAR, -18);

int year, month, day;

if (iDialogListener.getYear() == -1 || iDialogListener.getMonth() == -1

|| iDialogListener.getDay() == -1) {

Calendar defaultCal = Calendar.getInstance();

// 40 is the default age to show

defaultCal.add(Calendar.YEAR, -40);

year = defaultCal.get(Calendar.YEAR);

month = defaultCal.get(Calendar.MONTH);

day = defaultCal.get(Calendar.DAY_OF_MONTH);

} else {

year = iDialogListener.getYear();

month = iDialogListener.getMonth();

day = iDialogListener.getDay();

}

DatePickerDialog datepicker = new DatePickerDialog(getActivity(), this, year, month, day);

datepicker.getDatePicker().setMaxDate(cal.getTimeInMillis());

Calendar minDate = Calendar.getInstance();

minDate.set(Calendar.YEAR, Calendar.getInstance().get(Calendar.YEAR) - 100);

datepicker.getDatePicker().setMinDate(minDate.getTimeInMillis());

// Create a new instance of DatePickerDialog and return it

return datepicker;

}

在themes.xml中,唯一触及Dialogs的行是

@style/CustomDialogTheme

但是,如果我正在思考,那不会触及DialogFragment吗?

更新2

这是CustomDialogTheme:

@android:color/transparent

@null

@android:dimen/dialog_min_width_major

@android:dimen/dialog_min_width_minor

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值