Как программно создать всплывающее окно в Android - PullRequest
0 голосов
/ 01 февраля 2019

Я сделал Activity, которая будет появляться при нажатии кнопки.Я должен добавить слушателя на кнопку изображения.Я сделал дизайн в XMl, но я хочу проектировать программно.

Это мое изображение дизайна XML.

enter image description here

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".PopupMenu">
    <GridLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:columnCount="4"
        android:orientation="horizontal"
        android:rowCount="1">
        <ImageView
            android:id="@+id/imageOnlineIcon"
            android:layout_width="28dp"
            android:layout_height="28dp"
            app:srcCompat="@drawable/olnine_user"
            android:layout_row="0"
            android:layout_column="0" />
        <TextView
            android:id="@+id/textViewUserName"
            android:layout_width="201dp"
            android:layout_height="44dp"
            android:text="Shyam"
            android:textAlignment="center"
            android:textSize="22sp" />
        <ImageButton
            android:id="@+id/imageVideoIcon"
            android:layout_width="36dp"
            android:layout_height="36dp"
            android:background="@drawable/videonline" />
        <ImageButton
            android:id="@+id/imageMuteIcon"
            android:layout_width="36dp"
            android:layout_height="36dp"
            android:background="@drawable/muted" />
    </GridLayout>
    <View style="@style/Divider"/>
    <GridLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:columnCount="4"
        android:orientation="horizontal"
        android:rowCount="1">
        <ImageView
            android:id="@+id/imageOnlineIcon1"
            android:layout_width="28dp"
            android:layout_height="28dp"
            app:srcCompat="@drawable/olnine_user" />
        <TextView
            android:id="@+id/textViewUserName1"
            android:layout_width="201dp"
            android:layout_height="44dp"
            android:text="Samir"
            android:textAlignment="center"
            android:textSize="22sp" />
        <ImageButton
            android:id="@+id/imageVideoIcon1"
            android:layout_width="36dp"
            android:layout_height="36dp"
            android:background="@drawable/videonline" />
        <ImageButton
            android:id="@+id/imageMuteIcon1"
            android:layout_width="36dp"
            android:layout_height="36dp"
            android:background="@drawable/muted" />
    </GridLayout>
    <View style="@style/Divider"/>
    <GridLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:columnCount="4"
        android:orientation="horizontal"
        android:rowCount="1">
        <ImageView
            android:id="@+id/imageOnlineIcon2"
            android:layout_width="28dp"
            android:layout_height="28dp"
            app:srcCompat="@drawable/olnine_user" />
        <TextView
            android:id="@+id/textViewUserName2"
            android:layout_width="201dp"
            android:layout_height="44dp"
            android:text="Vivek"
            android:textAlignment="center"
            android:textSize="22sp" />
        <ImageButton
            android:id="@+id/imageVideoIcon2"
            android:layout_width="36dp"
            android:layout_height="36dp"
            android:background="@drawable/videonline" />
        <ImageButton
            android:id="@+id/imageMuteIcon2"
            android:layout_width="36dp"
            android:layout_height="36dp"
            android:background="@drawable/muted" />
    </GridLayout>
    <View style="@style/Divider"/>
</LinearLayout>

Я должен создать тот же дизайн в Java программно.И добавьте слушателя в Image Button, чтобы я мог обработать кнопку.

1 Ответ

0 голосов
/ 01 февраля 2019

Я думаю, вы рассказали об AlertDialog. Вы можете попробовать написать этот метод:

public void entre () {

    AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.this);
    alert.setTitle("Something");
    alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int whichButton) {
            //what you need to do after click "OK"
        }

    });

    alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int whichButton) {
            //what you need to do after click "Cancel"
        }
    });
    alert.show();
}

и добавить его в onClickListner:

public void onButtonClick(View view) {
    entre ();
}

Вы получите всплывающее окно с заголовком "Что-то "и с двумя кнопками:" ОК "и" Отмена "

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