相当直截了当的问题.在创建Xcode 8项目时,Xcode不会为我提供创建本地Git仓库的选项.该选项显示为灰色.此外,在现有项目中,"源代码管理"菜单中的所有选项都显示为灰色.Git安装在我的电脑上.这是怎么回事?
我正在尝试在tableView.reloadData()我调用以填充我的UITableView. 该表在 15-20 秒后显示数据,除非我手动开始滚动,在这种情况下它会立即加载。所以数据肯定在那里,只是没有正确加载。我能做些什么来解决这个问题?
var jsonLoaded:Bool = false {
didSet {
if jsonLoaded {
tableView.reloadData()
}
}
}
override func viewDidLoad() {
super.viewDidLoad()
let url = NSURL(string: "https://www.googleapis.com/youtube/v3/search?part=id&q=\(searchTerm)&maxResults=1&key=AIzaSyD7PxAoq0O5hUxx775l_E_mnowlU4cUfcI")
let task = NSURLSession.sharedSession().dataTaskWithURL(url!, completionHandler: {data, response, error -> Void in
if error != nil {
println(error)
} else {
let jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: nil) as! NSDictionary
if let items = jsonResult["items"] as? NSArray {
for songs in items {
if let id = songs["id"] …Run Code Online (Sandbox Code Playgroud) 我正在尝试向自定义导航栏的每一侧添加多个条形按钮项.我正在使用以下方法,但没有显示任何内容.在Obj-C中有一些线程,但我很难翻译语法.在Swift中有解决方法吗?
@IBOutlet weak var navBar: UINavigationBar!
override func viewDidLoad() {
var iconOne = UIImage(named: "iconOne")
var iconTwo = UIImage(named: "iconTwo")
var buttonOne:UIBarButtonItem = UIBarButtonItem(image: iconOne, style: UIBarButtonItemStyle.Plain, target: self, action: nil)
var buttonTwo:UIBarButtonItem = UIBarButtonItem(image: iconTwo, style: UIBarButtonItemStyle.Plain, target: self, action: nil)
self.navBar.setItems([buttonOne,buttonTwo], animated: true)
}
Run Code Online (Sandbox Code Playgroud) 我可以使用三元条件运算符来if {} else {}表示这样的语句:a ? x : y,或question ? answer1 : answer2.
是否可以将此格式与else if子句一起使用?例如:
a ? b ? x : y : z
......或者这只是矫枉过正?
我有一个字符串:"Hey @username that's funny".对于给定的字符串,如何搜索字符串以返回包含第一个字符@和最后一个字符的所有字符串范围 to get the username?
我想我可以得到@和每个索引的所有索引,得到substringToIndex下一个空格字符,但想知道是否有更简单的方法.
我可以使用三元条件运算符来if {} else {}表示这样的语句:a ? x : y,或question ? answer1 : answer2.
是否有可能使用这种格式来检查,而不是无论a是true还是false,a == nil还是a != nil?
更新:这可以说是我职业生涯中最大的脑屁.
如何更改特定值的字典键?我不能只是改为dict[i],dict[i+1]因为这会改变该特定键的值.并且没有dict.updateKeyForValue()像这样的东西dict.updateValueForKey().
因为我的密钥都是Int乱码,所以我无法通过循环修改整个键值对,因为我可能会覆盖循环尚未到达的一对.有更简单的方法吗?觉得我错过了一些明显的东西.
我的单元格中有一个自定义项UIImage,需要在didSelectRowAtIndexPath调用时进行更改。由于某种原因,图像没有改变,我认为这是因为我在方法内的单元格声明。
class CustomCell: UITableViewCell {
@IBOutlet weak var indicator: UIImageView!
}
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
var cell = tableView.dequeueReusableCellWithIdentifier("CustomCell", forIndexPath: indexPath) as! CustomCell
cell.indicator.image = UIImage(named: "newImage")
}
Run Code Online (Sandbox Code Playgroud)
UIImage单击单元格时如何将我的更改为“newImage”?
我有一个CALayer我明确动画到一个新位置.我的toValue属性似乎只相对于图层的初始位置.
CABasicAnimation *move = [CABasicAnimation animationWithKeyPath:@"position"];
move.fromValue = [NSValue valueWithCGPoint:CGPointMake(blueDot.position.x, blueDot.position.y)];
move.toValue = [NSValue valueWithCGPoint:CGPointMake(self.view.center.x, self.view.center.y)];
move.duration = 1.0;
[blueDot addAnimation:move forKey:@"myMoveAnimation"];
blueDot.position = CGPointMake(self.view.center.x, self.view.center.y);
Run Code Online (Sandbox Code Playgroud)
因此,此代码不会将图层重新绘制到视图的中心.似乎它正在重新绘制图层CGPointMake(self.view.center.x + blueDot.position.x, self.view.center.y + blueDot.position.y),就像它将图层的float值添加self.view.center到图层的起始位置一样.
这个toValue属性应该是这样的吗?将我blueDot移到视图中心最干净的方法是什么?
编辑:
-(void)viewDidLoad {
[super viewDidLoad];
blueDot = [CAShapeLayer layer];
[blueDot setPath:[[UIBezierPath bezierPathWithOvalInRect:CGRectMake(self.view.center.x - 60 - 5, 163.5, 10, 10)] CGPath]];
[blueDot setStrokeColor: [UIColor blueColor]CGColor];
[blueDot setFillColor:[UIColor blueColor]CGColor];
[[self.view layer] addSublayer:blueDot];
}
// 163.5 …Run Code Online (Sandbox Code Playgroud) 我希望在用户退格@键时检测到.我正在使用的代码是:
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
let char = string.cStringUsingEncoding(NSUTF8StringEncoding)!
let isBackSpace = strcmp(char, "\\b")
if (isBackSpace == -92) {
print("Backspace was pressed")
}
return true
}
Run Code Online (Sandbox Code Playgroud)
..但它没有告诉我哪个键是退格的.有什么办法吗?
关于为设置文本大小的动画UILabel,似乎有很多“快速修复”的答案漂浮在Stack Overflow周围,由不太愿意了解幕后情况的用户发布。
对于面向设计的开发人员来说,这令人沮丧。大多数答案建议在transform上指定UILabel,按缩放x,例如:
let label = UILabel()
label.text = "yourText"
label.sizeToFit()
label.layer.anchorPoint = CGPoint(x: 0, y: 0)
label.layer.position = CGPoint(x: 0, y: 0)
UIView.animate(withDuration: duration) {
label.transform = CGAffineTransform(scaleX: 4.0, y: 4.0)
}
Run Code Online (Sandbox Code Playgroud)
产生以下动画:

但是,它看起来很模糊-标签的跟踪值无法适应刻度。那么,为a的文本大小设置动画的最佳方法是UILabel什么?
swift ×9
ios ×7
uitableview ×2
animation ×1
dictionary ×1
git ×1
objective-c ×1
reload ×1
string ×1
uikit ×1
uilabel ×1
xcode ×1