小编Rag*_*age的帖子

UIPageControl 在 iOS 14 中不可见

我有一个 UIPageControl,过去 6 个月在我的生产应用程序中运行良好。但是,在将所有测试设备更新到 iOS 14 并将 Xcode 更新到 v12 后,我在 tableView 单元格中的 UIPageControl 不再可见。

我的代码中没有任何更改,这只是由于软件更新而自发发生的。我知道 Apple 已经更改了 UITableView 的视图层次结构,并且还修改了页面控件。有谁知道为什么这个页面控件被正确定位但仍然不可见?

页面控件在视图层次结构中但不可见

xcode uikit ios swift ios14

11
推荐指数
3
解决办法
4694
查看次数

Websockets 与 iOS 推送通知

以 Instagram 这样的 iOS 应用为例。Instagram 从根本上说是一个实时应用程序,只要用户与您交互,它就会更新其 UI。例如,如果有人喜欢您的帖子并且您正在使用该应用程序,则 UI 会更新以触发多巴胺释放并通知您您的一个帖子发生了某些事情。同样,当有人在 Instagram 上向您发送直接消息时,在使用该应用程序时,您会看到消息从顶部实时弹出。

在实现这样的实时功能方面,很明显,简单的 HTTPS 轮询方法效率太低了。因此,这留下了两种策略:

1.) APNS 推送通知:

当用户喜欢帖子、发送直接消息、评论(等)、向后端服务器发送 HTTP POST 时,后端服务器将更新数据库并向收件人的设备发送静默 Apple 推送通知。使用该应用程序的接收者将接收推送的有效负载,并将向后端服务器发送 HTTP GET 以获取所需的数据(即发送的直接消息的内容)。用户界面准“实时”更新。

2.) 网络套接字:

每当任何用户打开 iOS 应用程序时,通过 websocket 将用户连接到服务器。这意味着,当前使用该应用程序的所有用户都通过他们自己的 websocket 连接到服务器。当用户喜欢帖子、发送直接消息、评论(等)时,应用程序通过套接字向服务器发送一条消息,指示操作。服务器在更新数据库之前,找到与接收者关联的套接字,并通过套接字将消息转发给接收者。收到消息后,实时更新UI

这些方法中哪一种是可扩展的并且更适合生产环境?

push-notification apple-push-notifications websocket ios socket.io

7
推荐指数
2
解决办法
676
查看次数

应该删除 MySQL 中的“重复”索引吗?

我知道在 MySQL 索引 (A,B,C) 中,使用 |A|、|A、B|、|A、B、C| 的 ANDed WHERE 子句受益。这使得看起来拥有索引 (A,B,C) 意味着在 (A) 上拥有单个索引或在 (A,B) 上拥有复合索引是没有意义的。

1. 这是真的吗?

2. 当你已经有 (A,B,C) 的索引时,在 (A) 上维护索引只是一种浪费吗?

mysql sql database database-design

5
推荐指数
1
解决办法
44
查看次数

如何在MySQL 5 .7中实现CTE功能?

我有一个 USERSEARCH 表,应该用于快速搜索用户的子字符串。此功能用于在有人输入用户名或姓名时进行自动完成搜索。但是,我感兴趣的查询只会显示搜索者关注的用户子集的匹配项。这可以在 USERRELATIONSHIP 表中找到。

USERSEARCH
-----------------------------------------------
user_id(FK)    username_ngram          name_ngram
1              "AleBoy leBoy eBoy..."  "Ale le e"
2              "craze123 raze123 ..."  "Craze raze aze ze e"
3              "john1990 ohn1990 ..."  "John ohn hn n"
4              "JJ_1 J_1 _1 1"         "JJ"


USERRELATIONSHIP
-----------------------------------------------
user_id(FK)    follows_id(FK)
2              1
2              3
Run Code Online (Sandbox Code Playgroud)

当有人刚刚输入“Al”(不考虑用户关系)时,会发出这样的查询:

SELECT * FROM myapp.usersearch where username_ngram like 'Al%'
        UNION DISTINCT
        SELECT * FROM myapp.usersearch where name_ngram like 'Al%'
        UNION DISTINCT
        SELECT * FROM myapp.usersearch                            
        WHERE MATCH (username_ngram, name_ngram) AGAINST ('Al')  
        LIMIT …
Run Code Online (Sandbox Code Playgroud)

mysql sql pivot inner-join common-table-expression

4
推荐指数
1
解决办法
8222
查看次数

是否可以检索 Django .delete() 中删除的对象的“id”字段?

执行以下查询时,是否有一种机制可以返回已删除对象的“id”列表?

>>> MyModel.objects.all().delete()
>>> (430, {'myapp': 430})
Run Code Online (Sandbox Code Playgroud)

django django-models

3
推荐指数
1
解决办法
1149
查看次数

为什么 PIL 的 Image.fromarray() 会扭曲我的图像颜色?

我正在使用以下代码为 mp4 视频生成缩略图:

import cv2 as cv
from PIL import Image 

vidcap = cv.VideoCapture(videoPath)
vidcap.set(cv.CAP_PROP_POS_MSEC, millisecond)

#Turn video frame into numpy ndarray
success, image = vidcap.read()
cv.imwrite('fromImage.jpg', image)   #line to be replaced
Run Code Online (Sandbox Code Playgroud)

由高预算、专业拍摄的视频生成的缩略图如下所示: 在此处输入图片说明 不幸的是,在我的应用程序上下文中,我无法将图像帧直接写入文件。相反,我必须将 cv 生成的图像数组转换为 PIL 图像,然后从那里开始。它看起来像这样:

# Turn numpy ndarray int PIL image
img = Image.fromarray(image)
img.save('fromArray.jpg')    #Saving it for stackoverflow
Run Code Online (Sandbox Code Playgroud)

但是从同一个 mp4 视频输出的缩略图完全失真,因为它似乎已经交换了红色和蓝色,看起来像这样:在此处输入图片说明 谁或什么是这种图像失真的罪魁祸首?

python opencv image-processing python-imaging-library cv2

2
推荐指数
1
解决办法
1558
查看次数

Python:“and”运算符不返回布尔值

在 Python 中,空列表被视为 Falsey 值

因此,事情应该是这样的:

>>> [] and False
False
Run Code Online (Sandbox Code Playgroud)

但实际上,python 返回一个空列表。

>>> [] and False
[]
Run Code Online (Sandbox Code Playgroud)

这是故意的还是错误?

python boolean list python-3.x

0
推荐指数
1
解决办法
130
查看次数