小编Ala*_*lan的帖子

如何判断UITableView何时完成了ReloadData?

我想在完成表演后滚动到UITableView的底部 [self.tableView reloadData]

我原本有

 [self.tableView reloadData]
 NSIndexPath* indexPath = [NSIndexPath indexPathForRow: ([self.tableView numberOfRowsInSection:([self.tableView numberOfSections]-1)]-1) inSection: ([self.tableView numberOfSections]-1)];

[self.tableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionBottom animated:YES];
Run Code Online (Sandbox Code Playgroud)

但后来我读了reloadData是异步的,所以滚动不因为发生self.tableView,[self.tableView numberOfSections]并且[self.tableView numberOfRowsinSection都是0.

谢谢!

有什么奇怪的是我正在使用:

[self.tableView reloadData];
NSLog(@"Number of Sections %d", [self.tableView numberOfSections]);
NSLog(@"Number of Rows %d", [self.tableView numberOfRowsInSection:([self.tableView numberOfSections]-1)]-1);
Run Code Online (Sandbox Code Playgroud)

在控制台中它返回Sections = 1,Row = -1;

当我完成相同的NSLogs时,cellForRowAtIndexPath我得到Sections = 1和Row = 8; (8是对的)

objective-c uitableview reloaddata

167
推荐指数
8
解决办法
11万
查看次数

Xcode 8 - IB Designables - 无法呈现和更新自动布局状态,代理程序崩溃

我最近升级到Xcode 8,我遇到了故事板的问题.

如果我打开项目并且我没有打开Storyboard,它将编译并运行得很好.一旦我打开故事板,我就会收到有关IB Designables的多个错误,如下所示.

在此输入图像描述

这些观点正在使用从自定义视图唯一的看法TextFieldEffectsBEMCheckbox我进口(使用CocoaPods).

ios xcode-storyboard xcode8

141
推荐指数
11
解决办法
7万
查看次数

Xcode 8 - 缺少文件警告

自从使用Swift 2.3升级到Xcode 8后,我发现了几个丢失的文件警告.它们都与我正在使用的pod相关.

缺少的文件是

*.xcscheme 
*.cpp
*.xcuserstate
*.swift
Run Code Online (Sandbox Code Playgroud)

显示丢失文件的pod是

  • 境界(约43 of 43)
  • TextFieldEffects(~3 of 43)
  • BEMCheckBox(2/43)

我该如何解决这个问题?

ios cocoapods xcode8

125
推荐指数
8
解决办法
5万
查看次数

改造2 - URL查询参数

我使用查询参数来设置Google Maps API所需的值.

问题是我不需要&第一个查询参数的符号.

@GET("/maps/api/geocode/json?")
    Call<JsonObject> getLocationInfo(@Query("address") String zipCode,
                                             @Query("sensor") boolean sensor,
                                             @Query("client") String client,
                                             @Query("signature") String signature);
Run Code Online (Sandbox Code Playgroud)

改造产生:

&address=90210&sensor=false&client=gme-client&signature=signkey
Run Code Online (Sandbox Code Playgroud)

当我需要它时,会导致调用失败

address=90210&sensor=false&client=gme-client&signature=signkey
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

java android retrofit retrofit2

52
推荐指数
3
解决办法
7万
查看次数

从iPhone获取时区/国家/地区

无论如何都要告诉手机所在的时区/国家/地区?我宁愿不使用位置服务.

这样做的目的是自动路由呼叫.如果用户在美国,我希望该应用默认为呼叫美国呼叫中心.如果用户在其他国家/地区,我希望它默认为其呼叫中心.

谢谢!

iphone timezone ios

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

UITableView reloadSection和reloadRowsAtIndexPaths会导致奇怪的动画

我正在为我的UITableView进行延迟加载,所以我试图在图像更新时重新加载各行.然而,我遇到了一个奇怪的问题.

我打电话的时候

    [self.bubbleTableView reloadRowsAtIndexPaths:[NSArray arrayWithObjects:indexPath, nil] withRowAnimation:UITableViewRowAnimationNone];
Run Code Online (Sandbox Code Playgroud)

要么

    [self.bubbleTableView reloadSections:[NSIndexSet indexSetWithIndex:[indexPath section]] withRowAnimation:UITableViewRowAnimationNone];
Run Code Online (Sandbox Code Playgroud)

当我特别说"无动画"时,它仍然会动画,动画就是图像占据整个单元格并迅速缩小到正常大小.此外,如果我将其更改为任何其他动画,无论在什么设置下它都会执行相同的动画.

如果我评论其中任何一个并且只是使用reloadData它工作正常,但我宁愿不做reloadData,因为性能原因是重新更新不需要更新的单元格.

谢谢!

animation lazy-loading objective-c uitableview

16
推荐指数
2
解决办法
9925
查看次数

AFNetworking启用GZIP

我在AFNetworking网站上看到支持GZIP压缩"服务器响应的Gzip解压缩已内置到AFNetworking中,因为NSURLConnection将使用Content-Encoding:gzip HTTP头自动解压缩响应." - AFNetworking FAQ

如何启用GZIP压缩以便我可以从压缩的服务器中提取数据,或者它是否已默认为此?

谢谢!

gzip objective-c nsurlconnection ios afnetworking

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

移动Storyboard中其他对象后面的对象

我经常在IB/Storyboard中堆栈对象,几乎不可能拖动其他对象后面的对象而不移动前面的对象.无论如何我可以移动已经选中但在其他对象后面的对象吗?当我尝试移动它时,它总是选择顶部的对象,或者我必须将它移到前面并移动它然后将它发送回到后面?

谢谢!艾伦

xcode interface-builder storyboard

13
推荐指数
2
解决办法
7059
查看次数

了解AlamoFire OAuth示例

我能够得到AlamoFire提供的OAuth示例的工作实现.但是,我希望了解某些代码行及其工作原理.

完整示例:

class OAuth2Handler: RequestAdapter, RequestRetrier {
    private typealias RefreshCompletion = (_ succeeded: Bool, _ accessToken: String?, _ refreshToken: String?) -> Void

    private let sessionManager: SessionManager = {
        let configuration = URLSessionConfiguration.default
        configuration.httpAdditionalHeaders = SessionManager.defaultHTTPHeaders

        return SessionManager(configuration: configuration)
    }()

    private let lock = NSLock()

    private var clientID: String
    private var baseURLString: String
    private var accessToken: String
    private var refreshToken: String

    private var isRefreshing = false
    private var requestsToRetry: [RequestRetryCompletion] = []

    // MARK: - Initialization

    public init(clientID: String, baseURLString: String, …
Run Code Online (Sandbox Code Playgroud)

oauth ios swift alamofire swift3

11
推荐指数
1
解决办法
2114
查看次数

将数据从Child Modal VC传递到父视图控制器的最佳方法?

将数据从子模态视图传递到父视图控制器的最佳方法是什么?

我的iPad应用程序上有一个子模态登录屏幕,我想将用户信息传递给父拆分视图控制器.

我正在考虑使用NSNotification,但我不确定这是否是将数据传递回父级的最简单/最有效的方法.

谢谢!艾伦

xcode objective-c modalviewcontroller ios

10
推荐指数
2
解决办法
9815
查看次数