首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何接收从alertDialog片段到实际活动的yes/no值?

要接收从alertDialog片段到实际活动的yes/no值,可以通过以下步骤实现:

  1. 在活动中创建一个方法,用于接收从alertDialog片段返回的值。例如,可以创建一个名为onDialogResult的方法。
  2. 在活动中调用alertDialog片段,并将该方法作为参数传递给片段。例如,可以使用setPositiveButtonsetNegativeButton方法设置alertDialog的按钮,并在点击按钮时调用onDialogResult方法。
  3. 在片段中,通过getActivity()方法获取到当前的活动实例,并将返回的值传递给活动。可以使用onAttach方法将片段附加到活动,并在onDetach方法中将片段从活动中分离。
  4. 在活动的onDialogResult方法中,根据返回的值执行相应的操作。例如,可以使用条件语句判断返回的值是yes还是no,并执行相应的逻辑。

以下是一个示例代码:

在活动中:

代码语言:txt
复制
public class MainActivity extends AppCompatActivity {
    // ...

    public void onDialogResult(boolean result) {
        if (result) {
            // 用户选择了yes
            // 执行相应的操作
        } else {
            // 用户选择了no
            // 执行相应的操作
        }
    }

    public void showDialog() {
        AlertDialogFragment dialogFragment = new AlertDialogFragment();
        dialogFragment.setOnDialogResultListener(this::onDialogResult);
        dialogFragment.show(getSupportFragmentManager(), "alertDialog");
    }
}

在alertDialog片段中:

代码语言:txt
复制
public class AlertDialogFragment extends DialogFragment {
    private OnDialogResultListener mListener;

    public interface OnDialogResultListener {
        void onDialogResult(boolean result);
    }

    public void setOnDialogResultListener(OnDialogResultListener listener) {
        mListener = listener;
    }

    @NonNull
    @Override
    public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        builder.setTitle("提示")
                .setMessage("是否确认执行操作?")
                .setPositiveButton("是", (dialog, which) -> {
                    if (mListener != null) {
                        mListener.onDialogResult(true);
                    }
                })
                .setNegativeButton("否", (dialog, which) -> {
                    if (mListener != null) {
                        mListener.onDialogResult(false);
                    }
                });
        return builder.create();
    }
}

在活动中,可以通过调用showDialog方法来显示alertDialog片段,并在onDialogResult方法中处理返回的值。

这是一个简单的示例,具体实现可能会根据你的需求和代码结构有所不同。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

对话程序主席黄萱菁:EMNLP投稿接收,我们是如何工作

我们还要看作者逻辑表达,是否能把以往工作梳理清楚,分析、研究验证整个过程是否严谨,有理论支撑。另外,在实验环节,我们不仅看实验结果,更关注设计过程是否合理,实验结果是否充分可靠。...实验只是验证结论一个手段,不能只关注SOTA,发现问题解决问题逻辑演绎更为重要。 AI科技评论:EMNLP获奖论文是如何进行评选,今年评选过程中是否有一些有趣故事?...因为今年疫情在全球范围内仍造成了不小冲击,包括今年EMNLP会议采用也是线上线下结合方式,很多学者因为疫情无法现场参会。 AI科技评论:Findings和ARR实施效果如何?...另外,深度学习把我们特征挖掘时代带到了结构工程时代,这个过程带来了很多新问题,比如如何选择适配特殊任务特殊数据集结构;可理解分析如何增加模型可信赖性;如何更好地判断模型是否过拟合等。...这些热点研究方向百花齐放,但现阶段都都存在一些难以逾越瓶颈,比如预训练在工业界落地开销太大,如何在医疗、金融等领域发挥实际价值,能否实现小样本学习等等。

76320
  • 【Android开发基础系列】Android开发学习专题

    广播接收器只有在这个方法执行过程中才处于活动状态,当onReceive()返回后,广播接收器将不再处于活动状态。广播接收功能类似于一个回调函数,只是单次运行时处于活动状态。...Forward程序运行结果如图所示:         点击“Go”按钮Forward跳转到ForwardTarget,这个内容在Java源文件Forward.java以下片段中处理:         ...:         被跳转目标的Java源文件SendResult.java代码片段如下所示:         被跳转目标程序将返回返回,这里使用依然是Intent作为交互信息,通过setAction...这里onActivityResult()是一个被继承函数,其参数data就是这个活动作为返回接受到,data.getAction()可以返回Intent中取回内容。...5.5 菜单使用         在Android中具有单独接口,用于在活动中使用菜单。本例使用一个菜单来控制按钮背景颜色,其中可以了解如何在应用程序中使用菜单。

    32620

    Android实现强制下线功能示例代码

    一、回顾 上次连载写了两个类,一个类ActivityCollector.java用于管理所有的活动;一个类是BaseActivity.java作为所有活动父类; 还有一个放在layout目录中登录界面...然后设置点击事件:先判断账号和密码对不对,对了就是用intent实例进入活动中;错了就重新进入登录页面,并且打印出一条提示语。...这说明强制用户下线功能,应该写在接收器中,不写在具体某个活动中,这样发出“下线”广播时候,就能完成下线操作了。...alertDialog = dialogBuilder.create(); //需要设置AlertDialog类型,保证广播接收器中可以正常弹出 alertDialog.getWindow()....BroadcastBestPractice https://github.com/ruigege66/Android/tree/master/BroadcastBestPractice 到此这篇关于Android实现强制下线功能示例代码文章就介绍这了

    56630

    8.广播

    节点中,指定action子节点,action必须跟要接受广播中action匹配,比如,如果要接受打电话广播, 那么action必须指定为 <action android:name="android.intent.action.NEW_OUTGOING_CALL...先创建一个ActivityCollector类用于管理所有的<em>活动</em> 2.创建BaseActivity类作为所有<em>活动</em><em>的</em>父类 3.创建一个登录界面的布局login.xml 4.编写登录界面的<em>活动</em>,新建LoginActivity...这是第6步//在按钮<em>的</em>点击事件里面发送了一条广播,广播<em>的</em><em>值</em>为com.example.broadcastbestpractice.FORCE_OFFLINE,这条广播就是用于通知程序强制用户下线<em>的</em>。...<em>alertDialog</em> = dialogBuilder.create(); // 需要设置<em>AlertDialog</em><em>的</em>类型,保证在广播<em>接收</em>器中可以正常弹出 <em>alertDialog</em>.getWindow...另外,由于在广播<em>接收</em>器里启动<em>活动</em><em>的</em>, 因此一定要给Intent加入 FLAG_ACTIVITY_NEW_TASK这个标志。

    1.6K100

    《Android移动应用基础教程》(Android Studio)(第二版)黑马程序员 课后习题答案

    3、AndroidManifest.xml 4、LogCat 二、判断题 1、对 2、对 3、对 4、错 5、错 6、错 三、选择题 1、C 2、C 3、D 4、C 5、A 四、简答题 简述如何搭建...3.简述AlertDialog对话框创建过程 1、 调用AlertDialog静态内部类Builder创建AlertDialog.Builder对象。...(7)onRestart():Activity停止状态再次启动时调用。...(2) 广播接收者执行顺序 a)有序广播接收者是顺序执行。 有序广播按照广播接收者声明优先级别被依次接收。当在高级别的广播接收者逻辑执行完毕之后,广播才会继续传递。...在UI线程中创建Handler对象,并通过该对象sendMessage()方法发送消息MessageQueue中,接着通过Looper调用loop()方法不断MessageQueue中获取消息,

    2.7K20

    .NET Core 3 WPF MVVM框架 Prism系列之对话框服务

    本文将介绍如何在.NET Core3环境下使用MVVM框架Prism对话框服务,这也是prism系列最后一篇完结文章 一.对话框服务 在Prism中,通过一个IDialogAware接口来实现对话框服务...RequestClose为关闭事件,可由此控制窗体关闭 1.创建对话框View和ViewModel AlertDialog.xaml: <UserControl x:Class="PrismMetroSample.Shell.Views.Dialogs.<em>AlertDialog</em>...ToLower() == "true") result = ButtonResult.Yes; else if (parameter?....函数通过IDialogParameters接口GetValue函数来获取 callback:用于传入无返回回调函数 二.自定义对话框窗体  我们在上述可以看到,对话框窗体时一个WPF自带窗体,但是当我们要用自己自定义窗体...如何我们要将窗体样式全部去掉,改动AlertDialog.xaml:

    1.5K20

    Android-浅谈广播机制,实现强制下线功能

    顾名思义,广播就像我们上学时候每个班级里喇叭一样,这些喇叭都是接入学校一个地方,比如说广播室啊什么。一旦有什么通知,就会播放一条让全校师生都知道广播。...,我们通过一个List来暂存活动,然后提供了一个 addActivity() 方法用于向 List 中添加一个活动,提供了一个 removeActivity() 方法用于 List 中移除活动,最后提供了一个...由于广播接收器需要弹出一个对话框来阻塞用户正常操作,但如果创建是一个静态注册广播接收器,是没有办法在 onReceive() 方法里弹出对话框这样UI操作,而我没问显然也不可能在每个活动中都去注册一个动态广播接收器...解决办法就是,只需要在BaseActivity中动态注册一个广播接收器就可以了,因为所有的活动都是继承自BaseActivity。...因为我们要始终保证只有处于栈顶活动才能接受到这条强制下线广播,非栈顶活动没必要去接受这条广播,所以写 onRemove 和 onPause() 方法里就可以很好解决这个问题,当一个活动失去栈顶位置是就会自动取消广播接收注册

    90630

    Android开发笔记(二十三)文件对话框FileDialog

    其中最常用AlertDialog,而且需要自定义对话框时候,多半也是在AlertDialog.Builder基础上集成其他控件,具体参见《Android开发笔记(六十六)自定义对话框》。...dialog, int which) { dialog.cancel(); } }); builder.create().show(); } } 下面是对话框调用示例代码关键片段...,主流app很少会在应用中直接让用户操作文件,不过对码农来说,文件对话框又是非常常见,而且一些专业app也少不了文件处理,所以实际开发中还是能用到文件对话框。...文件对话框与上面的提示对话框一样,也是DialogFragment类继承而来,主要步骤与ConfirmDialogFragment大同小异,其主要难点在于文件和文件夹处理。...当然不要忘了在主页面的回调方法中对选定文件做具体处理,文件打开之后要如何读取数据,又要如何把内存中数据保存到文件中。 下面是文件打开对话框与文件保存对话框页面截图: ? ?

    3.4K30

    Android开发中Kotlin扩展函数技巧!

    在Kotlin中,扩展函数是一种非常有用功能,可以让我们向现有的类添加新功能,而无需修改类源代码。在本文中,我们将探讨Kotlin扩展函数原理和运用,以及如何在Android开发中使用它们。...这个函数接收一个String类型参数,然后返回反转后字符串。 扩展函数原理 扩展函数原理其实非常简单。...例如,当我们调用上面定义reverse函数时,实际上是这样调用: val str = "hello" val reversedStr = str.reverse() 编译器会将上面的代码转换为以下形式...下面是一些常见扩展函数局限性: 无法访问私有或受保护成员:扩展函数只能访问类中公共成员,无法访问私有或受保护成员。这是因为扩展函数实际上是静态函数,它们无法直接访问类私有成员。...(id) } 在上面的代码中,我们定义了一个名为findView扩展函数,接收一个Int类型参数id,并返回一个View类型结果。

    32920

    信息提醒之对话框(AlertDialog + ProgressDialog)-更新中

    ---- 带2个按钮(确认、取消)对话框 显示这样对话框关键是如何显示两个按钮以及响应这两个按钮单击事件。...一般来讲,setPositiveButton按钮来添加 “确定”“Yes”等按钮,setNegativeButton方法来添加“取消”,”cancel”等。...实际上,这种对话框相当于将ListView控件放在对话框上,然后在ListView中添加若干简单文本()。 在这个实例中,选择后显示选中值,5S后自动关闭。 ?...进度条对话框除了要设置普通对话框必要外,还需要设置另外两个:进度最大和当前进度。...单击取消,关闭对话框,再此显示时,进度0开始。 要实现进度随着时间变化而不断递增,需要使用多线程及定时器来完成这个工作, 本例中使用Handler类来不断更新进度对话框进度。 ?

    4.5K10

    安卓应用安全指南 4.9 使用`WebView`

    以下示例代码展示了,如何使用WebView显示存储在assets/和res/下内容。 要点: 1) 禁止访问文件(apk 文件中assets/和res/下文件除外)。...Android 应用端操作:使用 HTTPS,应用只有在证书可信情况下,才应与受管理 Web 服务建立网络连接。 以下示例代码是一个活动,展示了内部管理内容。...4.9.2.3 禁用 JavaScript 来显示通过意图接收 URL(必需) 如果你应用需要显示其他应用,以意图等形式传递 URL,则不要启用 JavaScript。...因为存在用恶意 JavaScript 显示恶意网页潜在风险。 “4.9.1.2 仅显示内部管理内容”部分中示例代码,使用固定 URL 显示内部管理内容来确保安全。...Web 消息传送是一种在 HTML5 中定义框架,用于在不同浏览上下文之间,发送和接收数据 [20]。

    1K10

    android设置对话框背景透明度和弹出位置

    就需要获得对话框Window对象,获得这个Window对象有多种方法。最容易就是直接 通过AlertDialoggetWindow方法来获得Window对象。...(Gravity.BOTTOM); 5 alertDialog.show(); 透明对话框 默认显示对话框是不透明,但我们可以通过设置对话框alpha将其变成透明或半透明效果...在颜色描述中,如果该为0表示完全透明,如果该为255,表示 不透明。 通过设置Windowsalpha属性也可以设置对话框透明度。但alpha取值范围是01.0。...如果该属性为0,表 示完全透明,如果该为1.0,表示不透明(也就是正常显示对话框)。下面的代码通过将alpha设为0.3,为了更清晰地显示透明对话框和非透 明对话框。...alertDialog.show(); 我们在使用某些应用时会发现当弹出对话框或某些模式窗口时,后面的内容会变得模糊或不清楚。实际上,这些效果也很容易在OPhone中实现。

    2.4K60

    ROS2DDSQoS主题记录

    最后期限 持续时间:后续消息发布主题之间预期最长时间 寿命 Duration:消息发布和接收之间最长时间,而消息不被视为陈旧或过期(过期消息被静默丢弃,实际上永远不会收到)。...当前定义 QoS 配置文件是: 发布者和订阅默认 QoS 设置 为了使 ROS 1 ROS 2 转换更容易,执行类似的网络行为是可取。...细节: DDS 调优信息 问题:当某些 IP 片段被丢弃时,通过有损(通常是 WiFi)连接发送数据会出现问题,可能导致接收内核缓冲区变满。...例如,通过运行将减小到 3 秒: 减小此参数也会减小没有接收片段时间窗口。该参数对于所有传入片段都是全局,因此需要针对每个环境考虑降低其可行性。...ipfrag_time但是,假设每个 UDP 数据包都缺少一个片段,则该可能必须非常高才能保存在 时间窗口内接收所有数据。 ----

    2.1K30

    手把手 | 如何训练一个简单音频识别网络

    每一行代表着正确、完全真实为该标签片段。第一行是所有为“silence”片段,第二行片段都是“unknown”词,第三行是“yes”,以此类推。...在同一个文件夹中测试一些其他WAV文件,看看结果如何。 分数将在01之间,越高意味着模型对预测越自信。...在Android应用里运行模型 如果你想观察模型在实际应用中表现如何,最简单方法就是下载并在你手机中安装已构建好Android演示应用了。...它执行很简单,只需跟踪最后几个预测并对其进行平均,因此可以根据需要轻松地移植其他平台和语言上。...语音命令数据集中含有二十种未知类型,包含了09数字,和一些随机命名,例如“sheila”。

    1.7K30

    安卓入门-第三章-安卓常用控件使用方式

    其实这是由于TextView中文字默认是居左上角对齐,虽然TextView宽度充满了整个屏幕,可是由于文字内容不够长,所以效果上完全看不出来。...这里我们在res目录下新建一个drawable-xhdpi目录,然后将事先准备好两张图片img_1.png和img_2.png复制该目录当中。  ...,调用活动方法时就能改变拖动条的当前,达到最大时,拖动条相当于就到了100%  ProgressBar用于在界面上显示一个进度条,表示我们程序正在加载一些数据。...这时你可能会问,旋转进度条表明我们程序正在加载数据,那数据总会有加载完时候吧?如何才能让进度条在数据加载完成时消失呢?这里我们就需要用到一个新知识点:**Android控件可见属性。...visible 表示控件是可见,这个是默认,不指定android:visibility 时,控件都是可见

    1.8K20

    【Flutter 专题】60 图解基本 Dialog 对话框小结

    提供了便利 AlertDialog / SimpleDialog / AboutDialog / CupertinoDialog / CupertinoAlertDialog 等多种对话框样式,和尚重点尝试前三种...和尚尝试 List AlertDialog; a. Dialog 默认宽度是固定,高度也有最大限度,若元素大小超过最大宽高则会溢出; b....要简单,只是单独多一个 titlePadding;消息主体默认是 List;基本 SimpleDialog 可实现效果 AlertDialog 均可实现; 案例尝试 和尚尝试最常见选择对话框;和尚采用了..., padding: EdgeInsets.all(20.0)), SimpleDialogOption(child: Text('Yes'), onPressed: () =>...;而实际也是对 Navigator.push 封装; 案例尝试 和尚重现以前博客中实现简易对话框:由底部弹出且透明度由 0.0 1.0;测试 barrierColor 进入和退出时都是渐变符合动画效果

    3.3K51

    C#-XamarinAndroid项目开发(一)——创建项目

    Resources/value/xxx.xml:value文件夹下主要存储常用,类似于我们C#中const常量。 其他文件夹及文件暂时忽略。...为了更好寻找视图,我们将视图名和活动名进行统一,修改页面的名为MainActivity,然后再重新设置内容视图。...首先我们需要为BaseActivity封装一些提示信息方法,让继承该类活动可以更简单调用提示。...然后我们封装寻找资源方法;在Android项目里是由活动调用视图,即先有活动后有视图,所以在活动里找页面的控件也是倒装,那么这个寻找控件方法就相对代码会比较多,所以我们简单封装一下。...图中我们可以看到,我们安装项目已经成功运行了,并且执行了点击事件。 到此,这个简单安卓项目已经创建完成了,下一篇文章,将介绍Xamarin中如何使用安卓控件。

    3.1K10

    如何远程关闭一个ASP.NET Core应用?

    我们其命名即可以看出ApplicationLifetime与应用声明周期有关,而HostingEnvironment则用来表示当前执行环境,本篇文章我们着重来了解ApplicationLifetime...从命名角度来看,ApplicationLifetime貌似是对当前应用生命周期描述,而实际上它存在目的仅仅是在应用启动和关闭时对相关组件发送相应信号或者通知而已。...Run方法目的除了启动WebHost之外,它实际上会阻塞当前进程直到应用关闭。...如下所示代码片段基本上体现了这两个扩展方法Run实现逻辑。...接下来我们通过实例方式来演示如何在一个中间件中利用这个ApplicationLifetime对象实现对应用远程关闭,为此我们将这个中间件命名为RemoteStopMiddleware。

    1.1K60

    NLP终生学习开始,谈谈深度学习中记忆结构设计和使用

    记忆结构中每个存储位置都可以包含某个特定状态信息。通过综合类似的状态估计结果,这些记忆可以生成逼近估计。...作者们展示了,在随机情况下,基于记忆逼近有更高可能性比原始蒙特卡洛树搜索表现更好。...而既然记忆存储来自于智能体实际探索活动,这就意味着智能体进行活动、获得记忆分布和记忆中采样、利用记忆分布是一样。...典型强化学习算法是无法从这些失败经验中学习,因为它们一直接收到固定失败(-1)反馈,也就不含有任何可以指导学习信号。...依靠这样办法,即便最开始时候机械臂根本就碰不到圆盘、以及反馈是稀疏,最终它也学会了如何把圆盘拨到桌子上指定位置。

    91830
    领券