菜鸟教程小白 发表于 2022-12-13 12:57:04

ios - 一次在 Firebase 中填充一组单元格的 UITableView


                                            <p><p>我正在使用 Firebase 填充 <code>UITableView</code>。</p>

<p>我想知道是否可以让 Firebase 下载前 5 个结果,并且在用户滚动到最后一个结果后,下载接下来的 5 个结果。</p>

<p>目前,Firebase 会一次下载我的所有子节点,但如果它一点一点下载,则 View 加载速度会更快。</p>

<p>有什么建议吗?</p>

<p>--编辑</p>

<p>请务必注意,单元格中有图像。图片是 base64 编码的 <code>NSString</code>。这是我用来检索它们并将它们转换为 <code>UIImage</code>s</p> 的代码

<pre><code>NSString* profPicString = ;
NSData *dataFromBase64 = ;
UIImage *profPicImage = [initWithData:dataFromBase64];
item.profilePicture = profPicImage;
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><h2>初步想法</h2>

<p>我不知道是否有理想的解决方案,但我肯定会研究 <a href="https://www.firebase.com/docs/ios/guide/retrieving-data.html#section-complex-queries" rel="noreferrer noopener nofollow">complex queries</a>在 Firebase 的文档中。您可以使用 <code>queryStartingAtValue</code> 和 <code>queryEndingAtValue</code> 方法查询某些范围,但您必须确保您的 Firebase 设置正确才能使用这些。</p>

<p>在 Range Queries 部分的底部,它提到:</p>

<blockquote>
<p>Range queries are also useful when you need to paginate your data.</p>
</blockquote>

<p>所以这可能是您理想的解决方案。</p>

<h2>现有解决方案</h2>

<p>有一个 <a href="https://stackoverflow.com/questions/29569504/how-do-i-perform-a-pagination-query-on-firebases-ios-sdk" rel="noreferrer noopener nofollow">answer</a>我发现它使用了我上面提到的东西,所以希望它对你有用。我要补充一点,在我的 firebase 上使用这些范围查询方法时运气不佳。</p>

<h2>最后的想法</h2>

<p>另一个解决方案可能不是您想听到的答案,但 URL(希望)比 base64 编码的图像短很多,并且在处理大量数据时可能会在下载时间上产生很大差异。通过此实现,您只在需要时从服务器请求图像,而不是一次全部请求。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 一次在 Firebase 中填充一组单元格的 UITableView,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/34403886/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/34403886/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 一次在 Firebase 中填充一组单元格的 UITableView