问题标签 [uialertaction]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
8656 浏览

ios - 是否应该在 UIAlertAction 的处理程序中将 self 捕获为强?

在编写handlera 的闭包时UIAlertAction,引用应该self是强(默认)weak、还是unowned

已经有与该主题相关的帖子(1234),但老实说,我看不出它们在这种情况下有何帮助。

让我们关注这个典型的代码:

UIViewController这是子类中的一个函数,self呈现警报的视图控制器也是如此。

文档说:

使用弱引用来避免引用循环,只要该引用在其生命周期的某个时间点可能“没有价值”。如果引用总是有值,请改用无主引用。

我可能是盲人,但我仍然不明白这对回答我的问题有何帮助UIAlertAction

在上面的代码中,是否有可能在其生命中的某个时刻self为零?是的。所以我应该标记为。selfweak

但是话又说回来,我想不出一个合理的场景,self当调用闭包时会为零。因此,就该闭包而言,self 将始终具有 value。所以我应该标记selfunowned

那么,再次,应该如何self在 UIAlertAction 的处理程序中捕获?

0 投票
1 回答
1604 浏览

ios - 使用动态项获取 UIAlertAction 的选择索引

我正在建立一个动态的动作列表。当按下一个动作时,我想跳到表格视图中的一个部分。为此,我想知道操作的选定索引并将其替换为代码部分:“inSection:0”。有什么办法吗?

这是我的代码:

0 投票
1 回答
681 浏览

ios - 从 UIAlertAction 返回一个布尔值

我在让 UIAlert 返回布尔值时遇到了麻烦,而且我真的在网上找不到任何东西,所以我希望你们能帮忙。首先,这是应用程序的基本设置。基本上,当用户单击“单击”按钮时,会弹出一个警报,选择“是”和“否”。到目前为止,这是我为按钮设置的代码:

我怎样才能准确地使用完成选项来返回一个布尔值?

0 投票
1 回答
6247 浏览

ios - 如何将更多参数传递给 UIAlertAction 的处理程序?

有没有办法将数组“listINeed”传递给处理函数“handleConfirmPressed”?我可以通过将它添加为类变量来做到这一点,但这看起来很hacky,现在我想为多个变量执行此操作,所以我需要一个更好的解决方案。

0 投票
1 回答
17214 浏览

ios - 应用程序在后台运行时发送本地通知 Swift 2.0

当用户最小化应用程序时(通过单击 iPhone 的主页按钮或锁定手机),我试图向用户发送“推送通知样式”警报。

我的应用程序不断解析一个 XML 文件(每 10 秒),我希望应用程序继续运行,以便在我的程序中满足某些条件时向用户发送本地通知,即使用户已最小化应用程序或锁定他们电话。

我已经从教程中反弹,每个人似乎都在“安排”通知,但这对我不起作用,因为我的通知不是基于时间的,而是基于满足的条件。

到目前为止我所做的:

AppDelegate.swift

MapViewController.swift

应用程序打开时警报效果很好,但是当我最小化手机上的应用程序时,通知永远不会出现。我假设应用程序在后台运行时没有运行,或者我不太理解这个概念。任何帮助是极大的赞赏。

0 投票
0 回答
286 浏览

swift2 - 如何在 tvOS 中实现 UIAlertController

我正在实现UIAlertControllerin tvOS 平台。它工作正常,但是当我点击按钮操作时,不会调用该操作。但是当用两个按钮上下移动并点击任何一个动作时。

这是我的代码。

请找出问题并建议我。谢谢你。

0 投票
1 回答
2237 浏览

ios - UIAlertController - 如果警报第一次解除,则不执行操作

在我正在进行的一个项目中,我必须编写一个 UIAlert 帮助模块,它会在我的 iOS 应用程序中到处显示弹出窗口。弹出窗口被编写为类函数,我可以在代码中的任何位置简单地调用它们(类是静态的,所有函数也是如此)。

我现在遇到一个非常奇怪的错误,如果您关闭警报一次,然后再次打开它,它的操作不再起作用(例如,不调用操作处理程序)。如果您在第一次显示弹出窗口时单击该操作,它确实有效,但是......

这是发生此错误的特定弹出窗口的代码(不影响其他弹出窗口):

skipWalkthroughAction定义如下:

并且cancelAction定义为:

每次您在演练的最后一步中按下“跳过”按钮时,都会特别显示此弹出窗口...

我已经尝试了一些关于导致这种行为的原因的线索,我认为这可能与弹出窗口没有真正被释放有关,但我现在完全不确定......

有任何想法吗 ?

0 投票
3 回答
628 浏览

ios - 如何在 ObjC 中通用更改 UIAlertController 按钮颜色

这个问题与此类似

但是,UIAlertController我不想改变 every 的颜色,而是想像“AppDelegate”一样通用地改变它。因此,如果我在一处更改颜色,则所有警报控制器操作按钮都应更改为新颜色。我的问题是:

  1. 是否可以从 AppDelegate 做到这一点?如果没有,我该怎么做?
  2. Apple 是否会批准在所有 iOS 版本中将按钮颜色更改为自定义?
0 投票
1 回答
597 浏览

swift - 使用 addAction 时 UIAlertAction 无法更改文本颜色

我的警报框正在使用自定义背景和白色文本,除了我似乎无法在我的操作是和否(来自 addAction 语句)上获得白色文本。当我使用属性字符串作为警报框标题和消息时,白色文本确实显示使用。

0 投票
3 回答
779 浏览

ios - UIAlertAction 的处理程序有点太晚了 - 我怎样才能让它立即生效?

我正在尝试(...)为添加到 UIAlertController 的按钮添加声音效果。我在处理程序中发出声音效果,但这实际上有点太晚了。声音像 0.5 秒一样迟到了。我希望在警报即将解除时立即发出声音,而不是解除后发出声音。使用 UIAlertView 可以使用 alertWillDismiss... 而不是 alertDidDismiss 来处理。

我错过了什么?