世界新闻自由DPRK <US <立陶宛:排序,pickerviews和scrollviews

前几天,我在看新闻,发现了一个有趣的事实。 显然,根据《无国界记者》,美国在180个新闻自由国家中排名41。 显然,我要做的第一件事就是确保“无国界记者”不仅仅是朝鲜宣传机器的一部分。 我主要是通过确定他们的网站在不到3年的时间内加载并且拥有漂亮的图表这一事实,确定记者无国界实际上不是我们亲爱的领导人金正恩的卫星组织,所以我想了解更多。

基本上,他们提出此清单的方式是向许多专家分发调查表,然后将他们的回答与评估期间内针对记者的虐待和暴力行为数据结合起来。 您可以在此处阅读有关该过程的更多信息。 作为一个千禧一代,我自然地认为,北欧的所有天堂,抱歉的避风港,在新闻自由上都比我们的公司经营,喜欢特朗普,筑墙反乌托邦更重要最终跻身榜首的国家。 正如我最近很酷的孩子们所说的那样,我错误地认为自己是一个“有识之士”的人,我以为外面的某些人可能和我一样震惊。

在过去的几天里,我从事了一个项目,该项目以几种不同的方式显示了许多国家的人口统计信息。 您可以在github上找到它的代码。 这主要是为了让我从纽约搬到加利福尼亚后的一个礼拜后重新回到游戏中。 我遇到的三个有趣的事情是排序,选择器视图和滚动视图。

找不到合适的API,我将一些奇怪的15个国家/地区及其排名硬编码到我的主视图控制器中。 我有一个帮助方法实例化我的国家,每个国家都有:名称,新闻自由等级,GDP等级,识字率等级,国旗图像,总人口等级,人口密度等级,出生率等级和人均军费等级。

在我的初始视图控制器中是表格视图,我希望用户能够根据他们选择的人口统计对国家进行排序。 我选择了选择器视图作为选择的工具,因为我认为它看起来很时髦。 使用选择器视图就像将其放置在情节提要中的所需位置,设置与视图相关的约束,然后将视图控制器设置为选择器视图的委托一样容易。

使用委托时,记住在接口处添加委托选择非常重要:

选择器视图有两种方法需要使用:

第一个是确切描述选择器视图中有多少列。 第二个描述选择器视图中有多少行,我将其设置为每个国家/地区拥有的人口统计类别的数量。 第三种方法为您的选择器视图填充每一行的首选文本或图像。

快速提示:如果您想弄圆任何东西的边缘,这非常简单

如果我滚动到识字率等级,然后单击提交按钮,我的国家将以识字率的升序重新排列。

排序过程本身很简单。 它所需要的只是一个NSSortDescriptor,您可以在该数组上使用它根据该数组中对象的特定键对其进行重新排列。

完成我的初始视图后,我希望用户能够从表格视图中选择一个国家,并将其切换到另一个视图,以显示特定于国家/地区的统计信息。 所需要做的就是从表格视图的原型单元格到另一个视图创建一个序列,并传递要用于填充目标视图控制器的特定国家/地区对象的数据。 确保在目标视图控制器的.h文件中,为期望接收的对象类型添加一个属性。

成功配置了我的应用程序的基础知识之后,我想添加另一项功能,即人口统计信息的直观表示。 因此,我在主视图控制器中添加了一个“浏览”按钮,该按钮与一个表视图控制器结合使用,该列表控制器列出了每个国家/地区的人口统计类型。

当按下其中一个表格单元格时,它会选择另一个具有图像的视图控制器。 我希望图像具有一定的交互性,因此将其置于滚动视图中。 现在,滚动视图对于刚开始的用户可能会有些棘手,所以让我引导您完成整个过程。

步骤1:将滚动视图拖到视图控制器上,并使其达到所需的大小。 我想缩小视图的尺寸,因为我希望它可以占据整个屏幕。

步骤2:将视图或图像视图拖到滚动视图上。

步骤3:使用方形领带战斗机将imageview约束为滚动视图。

步骤4:将imageview的高度和宽度限制为滚动视图。 进行此操作时,请确定您是否希望用户能够垂直水平滚动或同时使用这两者。 我希望用户能够水平滚动,因此我将imageview相对于滚动视图的宽度限制设为3。

步骤5:如果要允许放大和缩小,请确保在滚动视图的“属性”检查器上设置最大和最小缩放属性。

步骤6:使ViewController成为滚动视图的委托

第7步:添加一种简单的缩放方法

确保在要缩放的特定滚动视图中返回特定内容。 如果在一个视图控制器中有多个滚动视图,则就像在方法中添加if语句一样简单

步骤8:退后一步,享受工作

好吧。 关于排序,选择器视图和滚动视图的非常基础的教程。 希望您能学到一些东西,下周再见,还有更多有趣的事实,以及编码小知识。