我目前正在使用DialogFragment,但我无法在右上角设置图标. 我看到一些技巧将图标显示为对话框图标: @Override public Dialog onCreateDialog(Bundle savedInstanceState) { Dialog myDialog = new AlertDialog.Builde
我看到一些技巧将图标显示为对话框图标:
@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); }
请务必先调用super方法,否则可以覆盖您的图标.
希望这有助于某人……
来自墨西哥的问候……