有时候,我似乎无法使用Xcode 8 Beta 4下的常用快捷键(command+ /)来评论我的代码.该菜单中的选项被禁用(下面的屏幕截图).
你知道为什么吗?我是唯一有此问题的人吗?
编辑:重新启动Xcode后似乎再次工作......仍在寻找它的来源.这有点烦人......
EDIT2:它仍然出现在Xcode 8.1上.也许是因为我安装了2个版本的Xcode(普通和测试版)?只需重启就无法修复它!
编辑3:xpccachectl修复它的建议命令在MacOS High Sierra上不存在.
我试图使用带有Xcode 8.0和Swift 3.0的Alamofire 4.0.0在我的代码中下载这张图片.
这是我的要求:
func download(_ path: String, _ completionHandler: @escaping (Any?) -> ()) {
let stringURL = "https://slove.tulleb.com/uploads/6/6/0/2/66027561/2791411.jpg-1447979839.png"
print("Requesting \(stringURL)...")
_ = Alamofire.download(stringURL)
.responseData { response in
print(response)
if let data = response.result.value {
completionHandler(UIImage(data: data))
} else {
completionHandler(nil)
}
}
}
Run Code Online (Sandbox Code Playgroud)
我从服务器得到以下答案:
FAILURE:responseSerializationFailed(Alamofire.AFError.ResponseSerializationFailureReason.inputFileReadFailed(file:///private/var/mobile/Containers/Data/Application/50400F41-47FD-4276-8903-F48D942D064A/tmp/CFNetworkDownload_D1Aqkh.tmp)))
我对如何解决这个问题一无所知...... Alamofire新版本是否存在某些问题,还是我在某处遗忘了某些东西?
谢谢!
我的UITableView需要2次点击才能显示所选单元格的详细信息页面:一个用于选择,另一个用于显示详细视图.我想要一个clic直接显示点击单元格的详细视图.
我在UITableViewManager.m中使用了一个带有此方法的模态segue:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"showDetail"]) {
NSIndexPath *indexPath = [playerList indexPathForSelectedRow];
TCPlayerStat *object = _objects[indexPath.row];
[[segue destinationViewController] setPlayerStat:object];
}
}
Run Code Online (Sandbox Code Playgroud)
我无法使用push segue,因为我没有导航控制器(并不是真的想要).
我查看了TableView属性检查器,但没有找到与此相关的任何内容.我选择了"单一选择"选项并选中"显示选择触摸".我不知道这是否可能,如果可能,在哪里看..
谢谢你的帮助.
编辑1:当我写这样的两个方法时,它仍然不起作用(需要2次点击),我有一个新的警告日志:
"警告:在演示文稿正在进行时,尝试在TCRootViewController:0xa24f050上显示TCDetailViewController:0xa27b900!"
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[self performSegueWithIdentifier:@"showDetail" sender:self];
}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"showDetail"]) {
NSIndexPath *indexPath = [playerList indexPathForSelectedRow];
TCPlayerStat *object = _objects[indexPath.row];
TCDetailViewController *detailViewController = [segue destinationViewController];
[detailViewController setPlayerStat:object];
}
}
Run Code Online (Sandbox Code Playgroud)
编辑2:我不知道为什么,但有时它完美无缺,不需要再次点击表视图.找不到:/
解决方法如下
我想有一个指针作为类的参数.但是当我尝试编写init时,我遇到了这个错误:Cannot pass immutable value of type 'AnyObject?' as inout argument
class MyClass {
var valuePointer: UnsafeMutablePointer<AnyObject?>
init(value: inout AnyObject?) {
self.valuePointer = &value
}
}
Run Code Online (Sandbox Code Playgroud)
我想创建一些MyClass的实例,它们都可以引用相同的"值".然后,当我在这个类中编辑这个值时,它会在其他地方改变.
这是我第一次使用Swift中的指针.我想我做错了......
我无法再在iOS 13上使用该rightView属性MDCTextField。我是唯一对此有疑问的人吗?
正确的视图宽度覆盖整个文本字段:防止用户交互并隐藏textView内容。
从切换MDCTextField到时没问题UITextField。
我正在使用Swift 3.0和Xcode 8 Beta 6.我的应用程序尚未在AppStore上发布.
我想我在这里错过了一些东西,但我不知道是什么.我之前使用iAds与其他应用程序没有任何问题.但这是我第一次尝试奖励视频和AdMob.
我按照你的教程在AppDelegate.swift中编写了这段代码:
FIRApp.configure()
GADMobileAds.configure(withApplicationID: "my_app_id_created_on_admob")
let request = GADRequest()
GADRewardBasedVideoAd.sharedInstance().load(request, withAdUnitID: "my_add_unit_created_on_admob")
Run Code Online (Sandbox Code Playgroud)
然后我在UIViewController中有这个,我在点击按钮时推.
我希望这个VC在加载时展示有价值的广告.所以我也设置了AdMob委托:
override func viewDidLoad() {
super.viewDidLoad()
GADRewardBasedVideoAd.sharedInstance().delegate = self
}
Run Code Online (Sandbox Code Playgroud)
我在GADRewardBasedVideoAdDelegate之后声明了这个VC,并在VC的末尾添加了所有这些协议实现:
func rewardBasedVideoAdDidOpen(_ rewardBasedVideoAd: GADRewardBasedVideoAd!) {
print("rewardBasedVideoAdDidOpen")
}
func rewardBasedVideoAdDidClose(_ rewardBasedVideoAd: GADRewardBasedVideoAd!) {
print("rewardBasedVideoAdDidClose")
GADRewardBasedVideoAd.sharedInstance().load(GADRequest(), withAdUnitID: "my_add_unit_created_on_admob")
}
func rewardBasedVideoAdDidReceive(_ rewardBasedVideoAd: GADRewardBasedVideoAd!) {
print("rewardBasedVideoAdDidReceive")
}
func rewardBasedVideoAdDidStartPlaying(_ rewardBasedVideoAd: GADRewardBasedVideoAd!) {
print("rewardBasedVideoAdDidStartPlaying")
}
func rewardBasedVideoAdWillLeaveApplication(_ rewardBasedVideoAd: GADRewardBasedVideoAd!) {
print("rewardBasedVideoAdWillLeaveApplication")
}
func rewardBasedVideoAd(_ rewardBasedVideoAd: GADRewardBasedVideoAd!, didRewardUserWith reward: GADAdReward!) {
print("Should reward user with \(reward.amount) …Run Code Online (Sandbox Code Playgroud) 我正在执行请求操作,以使用AFHTTPRequestOperationManager从服务器下载每种类型的文件.
目前,我这样做:
AFHTTPRequestOperationManager *manager = [[AFHTTPRequestOperationManager alloc] initWithBaseURL:baseURL];
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"image/jpeg", @"image/gif", @"image/png", @"application/pdf", ..., nil];
Run Code Online (Sandbox Code Playgroud)
它运行良好,但我想启用所有内容类型可以避免遗漏一些.
是否可以为每种现有内容启动可接受的内容类型?就像是:
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"*", nil];
Run Code Online (Sandbox Code Playgroud)
谢谢.
不确定这里是解决此问题的最佳社区,如果不是,则很抱歉。
作为开发人员,我建议从 App Store Connect 网站下载一些促销代码,以下载我的应用程序的非发布版本(在 Apple 验证审核后可用)。
在某些 iPhone 上,代码运行良好:它会自动开始下载新版本,但一旦下载完成,它会自动将应用降级回之前安装的版本。
重新启动 iPhone 或使用新生成的代码后,可以重现该问题。
知道为什么吗?
ios ×7
swift ×4
xcode ×3
objective-c ×2
admob ×1
afnetworking ×1
alamofire ×1
comments ×1
content-type ×1
details ×1
downgrade ×1
inout ×1
ios13 ×1
iphone-x ×1
pointers ×1
segue ×1
storyboard ×1
uifont ×1
uitableview ×1