我正在尝试为集合视图单元设置动画,这是我目前为止的代码
pushd "../myFolder"
Setlocal enabledelayedexpansion
set "FILENAME=%%~nf"
set "OUTPUT=%%~nxf"
set "PREFIX=in_"
set "REPLACETEXT=hello"
set "TEMP=tmp"
for /R %%f in (*.txt) do (
for /f "delims=" %%A in (%%f) do (
SET "string=%%A"
SET modified=!string:%PREFIX%%FILENAME%=%REPLACETEXT%!
echo !modified! >> %TEMP%
)
del %OUTPUT%
rename %TEMP% %OUTPUT%
)
popd
但是我的代码无效。我已经阅读了文档,它说要实现类似的东西 if(self == contextFocusedView)......但它有一个警告说不兼容的指针View Controller to UIView。有人可以告诉我,我的代码有什么问题吗?怎么解决?谢谢!
答案 0 :(得分:4)
dequeueReusableCellWithReuseIdentifier:
不会返回当前的视图,而是返回新视图。
尝试使用cellForItemAtIndexPath:
但为什么不使用:
if (context.nextFocusedView) {
[coordinator addCoordinatedAnimations:^{
context.nextFocusedView.transform = CGAffineTransformMakeScale(1.1, 1.1);
} completion:nil];
}
if (context.previouslyFocusedView) {
[coordinator addCoordinatedAnimations:^{
context.previouslyFocusedView.transform = CGAffineTransformMakeScale(1.0, 1.0);
} completion:nil];
}
答案 1 :(得分:3)
所以我最终搞清楚了。我的collectionView中有一个UIImage。用于tvOS的UIImage的一个属性是adjustsImageWhenAncestorFocused。所以,如果你在viewDidLoad中设置它,如:
_imageView.adjustsImageWhenAncestorFocused = Yes;
或者,选中故事板中的“在聚焦时调整图像”框。这将集中图像。我没有尝试过标签。或者您可以在集合View单元格中添加的任何其他元素,但我确信有类似的东西。
快乐的编程人员! (:
答案 2 :(得分:0)
Swift 2.0版本的hanneski的答案:
override func didUpdateFocusInContext(context: UIFocusUpdateContext, withAnimationCoordinator coordinator: UIFocusAnimationCoordinator) {
if (context.nextFocusedView != nil) {
coordinator.addCoordinatedAnimations({() -> Void in
context.nextFocusedView!.transform = CGAffineTransformMakeScale(1.1, 1.1)
}, completion: { _ in })
}
if (context.previouslyFocusedView != nil) {
coordinator.addCoordinatedAnimations({() -> Void in
context.previouslyFocusedView!.transform = CGAffineTransformMakeScale(1.0, 1.0)
}, completion: { _ in })
}
}
这会缩放整个单元格,包括所有标签...