Как сделать вид спереди и заставить другие виды оставаться позади него в Android? - PullRequest
1 голос
/ 01 июля 2019

Я пытаюсь создать приложение для Android, чтобы при щелчке на определенном виде оно выводилось на передний план каждого вида, а другие виды оставались позади, становясь слегка тусклыми. E.g: Это макет профиля в WhatsApp (профиль находится на вершине каждой вещи, и мы можем взаимодействовать с ним)

Я хочу знать соответствующие ключевые слова, темы или названия конкретных виджетов, чтобы научиться, наконец, реализовывать это представление вместе с анимацией. Также приветствуется любой подход к решению.

Я пытался использовать разные способы вывода изображения на передний план и т. Д., Но это не решило проблему.

Ответы [ 5 ]

1 голос
/ 01 июля 2019

Просто создайте диалог и добавьте свой пользовательский вид для этого ... как это

AlertDialog.Builder builder =new AlertDialog.Builder(this);
View view = LayoutInflater.from(this).inflate(R.layout.custom_layout,null);
builder.setView(view);
builder.show();

когда появится диалоговое окно .. фон будет автоматически прозрачным.

1 голос
/ 01 июля 2019

Вы можете использовать диалог. Экран за диалоговым окном автоматически тускнеет. Вам не нужно ничего делать.

https://androidexample.com/Custom_Dialog_-_Android_Example/index.php?view=article_discription&aid=88

1 голос
/ 01 июля 2019

Этого можно добиться, создав настраиваемое диалоговое окно с предупреждением и добавив в него макет.

public class CvvHelpDialog extends Dialog {

    public CvvHelpDialog(@NonNull Activity context) {
        super(context);
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.dialog_cvv_help);

        WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
        lp.copyFrom(getWindow().getAttributes());
        lp.width = WindowManager.LayoutParams.MATCH_PARENT;
        getWindow().setAttributes(lp);

    }
}

Для R.layout. dialog_cvv_help , вы можете разработать макет как ваше требование. Вы можете отобразить его, просто используя приведенные ниже строки кода.

CvvHelpDialog cvvDialog = new CvvHelpDialog(getActivity());
cvvDialog.show();
1 голос
/ 01 июля 2019

Создайте activity или fragment с прозрачным фоном и изображением к центру activity или fragment. И просто начните новое действие или отобразите фрагмент.

Или вы также можете использовать DialogFragment для этой цели.

Вы можете использовать Элемент перехода для анимации, чтобы вытолкнуть вид спереди из другого, например, изображения профиля WhatsApp.

0 голосов
/ 01 июля 2019

Вы можете создать вид с пользовательским видом в центре и серым фоном вокруг этого вида в том же макете.А когда вам нужно будет показать - сделайте его видимым и установите isEnable = false для фоновой видовой группы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...