我有一个有几个屏幕的Android应用程序,如果出现错误情况,我希望显示始终可见的消息,如果错误情况消失,我希望禁止显示此消息。
“错误条件”是指设备无法将新信息传输到服务器,并且在成功传输后,错误条件会消失。信息必须清晰明了,这样无论终端用户在哪个屏幕上,都不会有人否认看到过它。
理想情况下,我正在寻找一个UI元素,它可以在出现错误时被放置,当没有错误时被删除,它将出现在所有屏幕上,在理想情况下可以由最终用户移动(这样最终用户可以决定此UI元素应该位于屏幕上的哪个位置),但不会被抑制(我不希望任何人隐藏消息并声称他或她没有看到它)。
我自然更喜欢用一段代码来创建这个UI元素,并允许它在应用程序中的所有屏幕上浮动,但如果绝对必要,我可以创建代码来添加一个存在于所有屏幕上的特殊错误条件UI元素。
有没有人有任何建议的UI元素,可以满足账单?
我建议(甚至实现了一个原型)当错误发生时生成通知,并在错误解决时关闭烤面包机通知,但这被认为是不可接受的,因为它不会产生永久警告,直到错误条件解决才会消失。我被告知,问题是最终用户可能会取消通知,然后继续工作,忘记他或她取消了通知,然后抱怨通知的后果(他们的订单从未通过,因为设备无法将其传输到服务器)。
我还建议每次设备传输失败时都发出警告,但这种解决方案也被认为是不可接受的,因为如果用户将设备带到没有互联网的地方,他或她将不得不不断地忽略通知,这将是恼人的,因此是不可接受的。通知必须是被动的(例如,不需要用户采取行动即可解除通知)。
我不想在互联网恢复之前关闭设备-即使不将数据传输到服务器,设备也可以继续将数据列表。我只想确保一个远程智能的人绝对不可能说他或她不知道他们的信息没有被发送到服务器。
值得注意的是,设备无法与服务器通信的最常见原因是设备没有连接到互联网。用户将设备带到没有互联网连接的非常偏远的地方,因此设备没有希望与服务器通信,直到它返回到设备被允许使用的较不遥远或具有无线互联网的某个地方。
发布于 2019-03-25 15:43:41
这可能不是最优雅的解决方案,但您可以
TextView
,也可以是角落中在对话/吐司中显示信息的小警报ImageView
,也可以是更复杂的内容,具体取决于您的需要onResume
of BaseActivity,显示/隐藏此布局<代码>H29<代码>F210如果只是关于互联网连接,你也可以在BaseActivity中有一个BroadcastReceiver
,它将显示/隐藏警告布局。
发布于 2019-03-25 17:54:32
我制作了一个toast库,它为我的一个项目预定义了消息。它有错误,警告,wifi警告等等。我把它建立在Toast小部件之上。ToastRect github link
或者,您也可以在对话框片段的基础上构建一些内容,这些内容只能由用户删除。
https://stackoverflow.com/questions/55340301
复制