我目前正在使用DialogFragment,但我无法在右上角设置图标.
我看到一些技巧将图标显示为对话框图标:
@Override public Dialog onCreateDialog(Bundle savedInstanceState) { Dialog myDialog = new AlertDialog.Builder(getActivity()) .setIcon(R.drawable.ic_info) .setTitle(title) return myDialog; }
但这没有用,因为图标位于左侧,并且不易直接点击
我知道我可以设置自定义布局,但我确信布局会反映所有操作系统和OEM制造商的自定义(相同的样式)
有帮助吗?
解决方法
我知道这是一个古老的问题,很可能已经解决了,但也许有人发现它很有用.
在onCreateView方法上执行以下操作:
@Override public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState) { getDialog().requestwindowFeature(Window.FEATURE_LEFT_ICON); // your view related code,inflate or whatever ...
这将使用continer准备标题视图以设置图标,但在视图层次结构实例化之后它才会存在,因此您需要在之后调用的方法上设置图标,如onActivityCreated,如下所示:
@Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); getDialog().setFeatureDrawableResource(Window.FEATURE_LEFT_ICON,R.drawable.ic_launcher); }
希望这有助于某人……
来自墨西哥的问候……
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。