Хорошо, я действительно запутался в том, как правильно настроить пользовательский диалог, используя последний appcompat v23.0.1 Вот несколько способов:
Первый способ:
public class AddTipDialogFrag extends DialogFragment
{
@Override
public Dialog onCreateDialog(Bundle savedInstanceState)
{
int title = getArguments().getInt("title");
AppCompatDialog dialogCompat = new AppCompatDialog(getActivity(), R.style.MyAlertDialogStyle);
dialogCompat.setTitle(title); //doesn't work btw
dialogCompat.setContentView(R.layout.add_tip_fragment);
return dialogCompat;
}
}
Второй способ:
public class AddTipDialogFrag extends AppCompatDialogFragment
{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View view = inflater.inflate(R.layout.add_tip_fragment,container, false);
int title = getArguments().getInt("title");
getDialog().setTitle(title);
return view;
}
}
Оба способа, похоже, дают одинаковый результат. Лично я предпочитаю первый способ, но есть проблема с эффектом пульсации, когда он вырезается, когда граница просмотра custem заканчивается, как вы можете видеть на рисунке ниже.
Это ошибка? (Должно быть!) Могу ли я исправить это или я должен просто перейти ко второму пути? (Что отлично работает с эффектом пульсации). Каков наилучший подход между этими двумя способами, рассматриваемыми большинством библиотечных диалоговых библиотек, использует первый способ?
РЕДАКТИРОВАТЬ: срыв пульсации на первом пути, похоже, больше не возникает, поэтому я все еще не уверен, что это правильный путь для этих двух.