protected void onCreate()

in WearAccessibilityApp/Wearable/src/main/java/com/example/android/wearable/wear/wearaccessibilityapp/DialogsActivity.java [45:185]


    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_dialogs);

        AmbientModeSupport.attach(this);

        // Supplier objects
        Supplier<Dialog> twoActionDialog =
                new Supplier<Dialog>() {
                    @Override
                    public Dialog get() {
                        AcceptDenyDialog twoActionDialog =
                                new AcceptDenyDialog(DialogsActivity.this);
                        twoActionDialog.setTitle(R.string.yes_no_dialog);
                        twoActionDialog.setMessage(getString(R.string.yes_no_dialog_description));
                        twoActionDialog.setPositiveButton(
                                new OnClickListener() {
                                    @Override
                                    public void onClick(DialogInterface dialog, int which) {
                                        // Add code here for onClick functionality.
                                    }
                                });
                        twoActionDialog.setNegativeButton(
                                new OnClickListener() {
                                    @Override
                                    public void onClick(DialogInterface dialog, int which) {
                                        // Add code here for onClick functionality.
                                    }
                                });
                        return twoActionDialog;
                    }
                };

        Supplier<Dialog> oneActionDialog =
                new Supplier<Dialog>() {
                    @Override
                    public Dialog get() {
                        AcceptDenyDialog oneActionDialog =
                                new AcceptDenyDialog(DialogsActivity.this);
                        oneActionDialog.setTitle(R.string.one_action_dialog);
                        oneActionDialog.setMessage(
                                getString(R.string.one_action_dialog_description));
                        oneActionDialog.setPositiveButton(
                                new OnClickListener() {
                                    @Override
                                    public void onClick(DialogInterface dialog, int which) {
                                        // Add code here for onClick functionality.
                                    }
                                });
                        return oneActionDialog;
                    }
                };

        Supplier<Dialog> multipleActionDialog =
                new Supplier<Dialog>() {
                    @Override
                    public Dialog get() {
                        DialogBuilder multipleActionBuilder =
                                new DialogBuilder(DialogsActivity.this);
                        multipleActionBuilder.setTitle(R.string.multiple_action_dialog);
                        multipleActionBuilder.setMessage(
                                R.string.multiple_action_dialog_description);

                        // OK option.
                        multipleActionBuilder.setPositiveIcon(R.drawable.accept_circle);
                        multipleActionBuilder.setPositiveButton(
                                R.string.ok,
                                new OnClickListener() {
                                    @Override
                                    public void onClick(DialogInterface dialog, int which) {
                                        // Add code here for onClick functionality.
                                    }
                                });

                        // Close option.
                        multipleActionBuilder.setNeutralIcon(R.drawable.deny_circle);
                        multipleActionBuilder.setNeutralButton(
                                R.string.close,
                                new OnClickListener() {
                                    @Override
                                    public void onClick(DialogInterface dialog, int which) {
                                        // Add code here for onClick functionality.
                                    }
                                });

                        // Open in phone option.
                        multipleActionBuilder.setNegativeIcon(R.drawable.open_in_phone_circle);
                        multipleActionBuilder.setNegativeButton(
                                R.string.open_on_phone,
                                new OnClickListener() {
                                    @Override
                                    public void onClick(DialogInterface dialog, int which) {
                                        Intent intent =
                                                new Intent(
                                                        DialogsActivity.this,
                                                        OpenOnPhoneAnimationActivity.class);
                                        startActivity(intent);
                                    }
                                });
                        return multipleActionBuilder.create();
                    }
                };

        // Create a list of items for adapter to display.
        mItems = new ArrayList<>();
        mItems.add(new DialogsItem(R.string.yes_no_action, twoActionDialog));
        mItems.add(new DialogsItem(R.string.one_action, oneActionDialog));
        mItems.add(new DialogsItem(R.string.multiple_actions, multipleActionDialog));

        // Initialize an adapter and set it to ListView mListView.
        ListViewAdapter adapter = new ListViewAdapter(this, mItems);
        final ListView listView = findViewById(R.id.list_view_dialogs);
        listView.setAdapter(adapter);

        // Set header of mListView to be the title from title_layout.
        LayoutInflater inflater = LayoutInflater.from(this);
        View titleLayout = inflater.inflate(R.layout.title_layout, null);
        TextView titleView = titleLayout.findViewById(R.id.title_text);
        titleView.setText(R.string.dialogs);
        titleView.setOnClickListener(null); // make title non-clickable (will not turn grey)

        listView.addHeaderView(titleView);

        // Goes to a dialog when you click on one of the list items.
        // Dependent upon position of click.
        // Note: Keep in mind that icons will not appear on dialog unless you
        //       set an onClickListener.
        listView.setOnItemClickListener(
                new AdapterView.OnItemClickListener() {
                    @Override
                    public void onItemClick(
                            AdapterView<?> parent, View view, int position, long id) {
                        mView = view;
                        Dialog dialog =
                                mItems.get(position - listView.getHeaderViewsCount())
                                        .getSupplier()
                                        .get();
                        dialog.show();
                    }
                });
    }