Супер как помещать активность Android

Приветствие, бывший исследуя и я не нахожу данных, как создания активности, которую супер он помещал бы над другими, для esplicame лучше я хочу сделать что-то подобное экрану, который бросается, когда ты считаешь мало батарею, которая не имеет значение в каком этом app она бросается над всеми, спасибо заранее

-1
задан 29.08.2019, 14:20
2 ответа

Не, который является тем, что ты хочешь сделать, я представляю dialog https://developer.android.com/guide/topics/ui/dialogs , или ты можешь hecharle глаз в SnackBars https://developer.android.com/reference/android/support/design/widget/Snackbar это пример dialog, у которого есть кнопки, но ты можешь делать это в твой вкус fragment_alta_dispositivo это xml, который ты производишь, чтобы рисовать экран, который ты хочешь показать, диалог не закроется только, из-за чего ты должен нажимать кнопку back во многих ocaciones, нужно добавлять кнопку, чтобы закрывать, так что ты был бы должен рисовать это и давать ему функциональность:

public void createDialog(final Dispositivo.DispositivoUsuario item, final int opcion){
    AlertDialog.Builder mBuilder = new AlertDialog.Builder(context);
    View mViewAgregar = getLayoutInflater().inflate(R.layout.fragment_alta_dispositivo, null);
    mBuilder.setView(mViewAgregar);
    dialog = mBuilder.create();
    final EditText txtMacAddres = mViewAgregar.findViewById(R.id.txtMacAddres);
    final EditText txtUsuario = mViewAgregar.findViewById(R.id.txtUsuario);
    final ImageView btnCerrar = mViewAgregar.findViewById(R.id.btnCerrar);
    final TextView txtAlta = mViewAgregar.findViewById(R.id.txtAltaDispositivo);
    final TextView txtEdita = mViewAgregar.findViewById(R.id.txtEditaDispositivo);
    Button btnAgregar = mViewAgregar.findViewById(R.id.btnAgregar);

    txtMacAddres.setText(item.dispositivo.toUpperCase());

    //  Personaliza dialog
    if(opcion == 1){
        txtEdita.setVisibility(View.GONE);
        txtAlta.setVisibility(View.VISIBLE);
        btnAgregar.setText(getString(R.string.agregar));
    }else{
        txtEdita.setVisibility(View.VISIBLE);
        txtAlta.setVisibility(View.GONE);
        btnAgregar.setText(getString(R.string.actualizar));
        txtUsuario.setText(item.usuario);
    }
    btnAgregar.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            boolean salida = false;
            for (Dispositivo.DispositivoUsuario du:listDispositivoUsuario
            ) {
                if(du.usuario.toUpperCase().equals(txtUsuario.getText().toString().toUpperCase())){
                    salida = true;
                }
            }
            if(!item.dispositivo.matches(getString(R.string.regxMAC))){
                Toast.makeText(context, getString(R.string.errorImagenSeleccionada), Toast.LENGTH_LONG).show();
                dialog.hide();
                return;
            }else if(txtUsuario.getText().toString().length()<=0){
                Toast.makeText(context, getString(R.string.usuarioSinNombre), Toast.LENGTH_LONG).show();
                return;
            }else if(salida){
                Toast.makeText(context, getString(R.string.usuarioMismoNombre), Toast.LENGTH_LONG).show();
                return;
            }

            if (opcion == 2){
                listDispositivoUsuario.remove(item);
            }
            Date date = new Date();
            listDispositivoUsuario.add(new Dispositivo.DispositivoUsuario(
                    txtMacAddres.getText().toString().toUpperCase(),
                    txtUsuario.getText().toString().toUpperCase(),
                    true,
                    date,
                    null
            ));
            adapter.notifyItemInserted(listDispositivoUsuario.size() - 1);
            adapter.notifyDataSetChanged();
            dialog.hide();
            //Toast.makeText(context, "Click agregar", Toast.LENGTH_SHORT).show();
        }
    });
    dialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
    dialog.show();
    btnCerrar.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            dialog.hide();
        }
    });
    bottomNavigationView.getMenu().getItem(1).setChecked(true);
}
0
ответ дан 04.09.2019, 07:27
  • 1
    " Не, который является тем, что ты хочешь сделать, " мы предлагаем тебе добавить комментарии к вопросу, чтобы определять, что то, что в действительности желает OP перед тем, как отвечать, возможно, что то, что отвечается в действительности, не решает проблему, привет. – Jorgesys♦ 30.08.2019, 00:22

Для этого он используется método следующий:

    public class Monitor extends BroadcastReceiver{
          public void onReceive(Context context,Intent intent) {
             //aquí tu código
          }
    }

Потом ты конфигурируешь xml и это делаешь на основании твоей идеи.

-2
ответ дан 04.09.2019, 07:27

Теги

Похожие вопросы