问题标签 [contentoffset]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - iOS UITableView 以编程方式将所有内容滚动到屏幕外导致视网膜设备上出现断断续续的现象
我有一个 UITableView,我想在表格中的所有单元格中产生滚动效果,然后将所有内容移出屏幕,然后为第一个单元格的返回设置动画。如果用户想重新开始,我将这个动画作为表格单元格中所有内容的清除方法。
我已经完成了所有这些工作,但是当我在 iPhone 5 上运行 contentOffset 动画时,它会导致抖动运动,其中单元格看起来像是上下移动,然后开始将内容滚动到屏幕外。在模拟器中看起来不错。为什么会这样?我是否必须使用 UIScrollView 并在 UITableView 之外添加子视图?
这是我正在使用的代码:
有趣的是,如果我将偏移高度设置为不那么大,则不会发生这种断断续续的情况,但这不会将所有内容滚动到屏幕外。
我已经尝试在屏幕上为表格视图框架设置动画,这确实有效,但没有给我首先滚动浏览所有内容的动画,这是我想要的效果。
以前有人这样做过,我在这里做错了什么?我试图模仿的效果来自一个名为 WillCall ( https://www.getwillcall.com/ ) 的应用程序,当您点击进出艺术家详细信息时,您将看到这种滚动效果。
ios - 滚动 UITableView 时更新 UIImageview 的高度
我有一个UIImageView
,并且在同样的观点中我有一个UITableView
。
我需要获得滚动 y 运动,并且运动应该更新UIImageView
.
因此,如果我向上滚动UITableView
,UIImage
应该降低高度,如果我向下滚动,UIImage
应该增加它的高度。
我已经实现了方法scrollViewWillBeginDragging
和scrollViewDidScroll
委托<UIScrollviewdelegate>
,我尝试过使用tableview.contentOffset.y
,但是滚动小于UIImageView
高度的减少。
它应该是 1:1,所以如果我向上滚动Tableview
20px UIImage.frame.size.height -= 20
,.
编辑:
这是代码:
在这里我得到了拖动的起点
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
initialframe = _DetailViewTable.contentOffset.y;
NSLog(@"Will begin dragging %f", initial frame);
}
在这种方法中,我应该更新高度,但我不知道该怎么做。
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
//这里我更新了UIImageView的高度,但是不能正常工作。
_imageView.frame = CGRectMake(_imageView.frame.origin.x, , _imageView.frame.size.width, _imageView.frame.size.height-(initialframe-_DetailTab));
}
objective-c - 如果我在 EndDecelerating、EndDragging 和 DidScroll 中有计算,如何防止 UIScrollView 的生涩滚动?
每次滚动 UIScrollView 时,我都必须更新标签的文本……或者每次滚动并让它停在自己的某个点时。标签文本的更新是基于滚动视图的 contentoffset 完成的。所以现在我在每个方法中进行检查:
现在在这之后,我的滚动视图变得太生涩了,我怎样才能防止滚动视图的这种生涩滚动?是否有一个共同的委托而不是这三个方法甚至前两个方法?提前感谢您的帮助。
ios - WebView 自己滚动
我已将 UITextField 作为子视图添加到 UIWebView 中,该 UIWebView 充当浏览器的地址栏。但它的行为相当奇怪,因为当字段开始编辑时,webView 会自动滚动到 (-40, 0) 左右,我不知道为什么。我已经尝试调用 [webView setContentOffset] 来抵消这种行为,但是由于某种原因这不起作用(是的,我已经连接了委托)。我错过了什么吗?
ios - UICollectionView contentOffset 随自定义布局而变化
我有一个带有自定义 UICollectionViewLayout 的 UICollectionView (实际上,我正在使用这个不错的布局)。
我contentOffset = CGPointZero
在 viewDidLoad 中设置。然而,在 viewDidLoad 之后,偏移量为 -20,内容被向下推,如下所示:
(它应该与线齐平)。我正在界面构建器中加载集合视图布局。看来我的问题和这个很相似问题非常相似,但是那里的解决方案对我不起作用。
我尝试collectionViewContentSize
在我的布局实现中进行修改以确保它始终大于 collectionView 的大小。虽然这意味着我可以向下滚动我的内容(它比 collectionView 的高度短)并隐藏额外的空间,但我也可以向上滚动以查看它。
似乎没有任何效果!
ios - UIScrollView contenOffset 和 setContentSize?
我有一个滚动视图,其中包含许多UIView
. UIView
对象被动态添加/删除,scrollview
并且它contentSize
也被更改。
我的问题是,如果setContentSize
更改,它contentOffset
会自动更改,并且当我从中删除某些内容时,scrollview
它不会停留在删除的位置吗?
如何控制和发挥作用?
如果你问,我会添加代码。
当我删除某些内容时,使用此方法:
当我创建某些东西时,会使用此方法:
objective-c - 对于不存在的状态栏,iOS7 内容偏移 20 像素
当我迁移到 iOS7 时,我的 UIViews 有一个奇怪的行为。似乎他们收到了一条缩小 20 像素的消息。我已经从我的所有 XIB 文件中删除了状态栏,并在应用程序委托中明确将其设置为隐藏。我的 UINavigationController 似乎收到了一条消息:
这反过来将消息发送到我的滚动视图
它将它们的偏移量设置为 -20 像素......这不应该真的发生,因为该函数没有理由将任何东西调整该数量。
有谁知道如何解决这个问题?
ios - contentOffset 在 UIScrollView 缩放结束时重置
我正在做一些看起来应该非常简单的事情,但是我看到了我无法理解的奇怪结果。
我有 a 的UIImageView
内部(和大小) a UIScrollView
,iOS
它是运行它的设备的大小。所有这些都在 IB 中定义。
我有委托方法定义
缩放时,我看到调用了以下委托方法:
令人困惑并导致图像移动的是最后一个scrollViewDidScroll
重置contentOffset
为 {0,0}。看来我一定是无意中留下了导致这种行为的属性集或未设置,但我还没有找到它是什么。
任何建议的提示将不胜感激。
objective-c - 我怎么知道 UITextField 的 contentOffset?
我有一个高度为 500 的 UIScrollView,UITextFileds 位于位置 0、100、200、300、400、500(1 个 UITextFileds、UITextFileds 2、3 个 UITextFileds、UITextFileds aUITextFileds 4 和 5)。
ContentOffset 位于 (0, 70) 位置。我点击UITextField 4,我怎么知道TextField 4 contentOffset的位置??
更新:
我点击了 UITextField 4,我怎么知道我必须向上 Y 像素,以便 UITextField 不会被键盘隐藏?
javascript - 锚点导航与顶部菜单...需要添加动态偏移到锚点
我的菜单和基于#anchors 的导航有问题。我正在使用 JS 函数在滚动时将我的菜单置于顶部(#stickyheader)。我的菜单上有一个 div 在滚动时会消失(#unstickyheader)。这个 div 的高度不是固定的,它取决于它的内容长度和屏幕的宽度。我的菜单垂直链接到我的页面的不同部分,在我处理锚导航的 js 函数中,我有一个偏移值,以在我的菜单下使用定义的填充显示我的部分标题:
这是我的CSS:
我的 html :
和 javascript :
我的问题是我需要动态生成这个偏移量。每次单击我的菜单中的任何项目时,偏移量都需要检查我的菜单(#stickyheader)是否粘在我的页面顶部,然后计算我的菜单的高度(#stickyheader),这将是偏移量(+ 10px 用于填充底部)。如果我的菜单没有粘在顶部,所以显示我的菜单上的 div (#unstickyheader),偏移量应该是我的菜单的高度 (#stickyheader) + div 的高度 (#unstickyheader)。
我不知道如何计算两个 div 的总高度,具体取决于是否显示第一个 div,以及在我的菜单中的每次单击时计算...
你对那个怎么想的 ?还有其他解决方案吗?
我在这里做了一个 JSfiddle,http://jsfiddle.net/uFq2k/359/
示例中的偏移量是 90,因此当我在显示 div (#unstickyheader) 时单击菜单项时,我的菜单和我的部分标题之间的填充,例如“discography”是正确的,但是当我单击时之后的另一个链接,比方说传记,内边距太大……应该在 50 左右……
我真的希望你能理解我的问题,我很难解释,但如果你测试我的 JSfiddle,你应该明白这个问题。
非常感谢你的帮助 !