[![Имеется 2 фрагмента: фрагмент меню, и собственно фрагмент "Предложение дня." При нажатии на кнопку BUTTON, фрагмент "предложение дня" становится невидимым (.hide()). Нужно реализовать, пока фрагмент ПРЕДЛОЖЕНИЕ ДНЯ - видимый, фрагмент МЕНЮ был неактивный (я не мог его листать) и был затемнен.]1]]
Мне кажется то что у вас на скриншоте можно сделать через простой диалог с собственной разметкой. Вы можете указать при создании диалога что его нельзя скрыть тапом за его пределами. Так же вы можете затемнить окружающее пространство вокруг этого диалога. Чтобы его все-таки скрыть я вам советую там сделать кнопку для закрытия диалога. Ниже привожу пример создания такого диалога:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="10dp">
<EditText
android:id="@+id/email"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="15dp"
android:hint="Enter Email"
android:inputType="textEmailAddress" />
<EditText
android:id="@+id/password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter your password"
android:inputType="textPassword" />
</LinearLayout>
Дальше вы делаете класс для того чтобы обработать то что в вашем диалоге нажимается:
public class CustomLoginDialog extends DialogFragment {
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
View view = getActivity().getLayoutInflater().inflate(R.layout.custom_login_layout, null);
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Login");
builder.setView(view);
final EditText emailText = view.findViewById(R.id.email);
final EditText passwordText = view.findViewById(R.id.password);
builder.setNegativeButton("Cancel", null);
builder.setPositiveButton("Login", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Toast.makeText(getActivity(), "Email is " + emailText.getText().toString() + " and password is" + passwordText.getText().toString(), Toast.LENGTH_SHORT).show();
}
});
return builder.create();
}
@Override
public void onCancel(DialogInterface dialog) {
super.onCancel(dialog);
Toast.makeText(getActivity(), "Dialog Canceld", Toast.LENGTH_SHORT).show();
}
}
и дальше вы его уже создаете из фрагмента или активности:
CustomLoginDialog customLoginDialog = new CustomLoginDialog();
customLoginDialog.show(getSupportFragmentManager(), "login_dialog");
Это я привел сложноватый пример, можно и попроще:
final Dialog dialog = new Dialog(context);
dialog.setContentView(R.layout.custom);
dialog.setTitle("Title...");
// set the custom dialog components - text, image and button
TextView text = (TextView) dialog.findViewById(R.id.text);
text.setText("Android custom dialog example!");
ImageView image = (ImageView) dialog.findViewById(R.id.image);
image.setImageResource(R.drawable.ic_launcher);
Button dialogButton = (Button) dialog.findViewById(R.id.dialogButtonOK);
// if button is clicked, close the custom dialog
dialogButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
dialog.show();
второй пример вы можете использовать непосредственно где вам вздумается, и так же можно здесь указать что нельзя скрыть диалог кликом за его пределами. Надеюсь один из способов вам поможет. Удачи :)
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
@ResponseBody при формировании ответа использует StringHttpMessageConverter(исправьте, если не прав)И у него по-умолчанию кодировка ISO-8859-1
Всем приветХотелось бы узнать, можно ли при работе с Rest Api всегда использовать только POST заголовки? Или это моветон? Согласно CRUD, на каждую...
При вызове java-программы из командной строки с аргументами в качестве русских символов эти аргументы не распознаются программойЧто можно...
Я использовал библиотеку AndroidX Preference для своего проектаЭтот проект имеет главное меню и подменю