如何在 iPhone Objective-c 中水平滚动 UITableview 的特定行?

发布于 2024-11-19 03:57:36 字数 137 浏览 4 评论 0原文

我正在开发一个项目,我必须在 uitableview 中水平滚动每一行(独立)。实际上,我在表视图中显示一些图像,每行都包含根据类别的图像。所以我想为 uitableview 的每一行添加水平滚动。

请给我一些示例代码或任何教程链接。提前致谢。

I am working on a project where I have to horizontally scroll each row (independently) in the uitableview. Actually I am showing some images in the table view and each row contains images according to their category. So I want to add a horizontal scrolling to each row of the uitableview.

Please give me some sample code or any tutorial link. thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

嘴硬脾气大 2024-11-26 03:57:36

要独立滚动每个单元格,我将在 UITableViewCell 中使用 UIScrollView。

您可能必须确保 UIScrollView 的垂直滚动已关闭,否则它可能会覆盖 UITableView 的垂直滚动。

还将 UIScrollView 内容大小高度设置为与 UITableViewCell 高度相同...这应该有助于确保垂直滚动仍然由 TableView 完成。

To scroll each cell independently, I'd use a UIScrollView within your UITableViewCell.

You'll probably have to ensure that the vertical scrolling of the UIScrollView is turned off, otherwise it may override the vertical scroll of the UITableView.

Also set your UIScrollView content size height to the same as the UITableViewCell height... that should help ensure that your vertical scrolling is still done by the TableView.

薯片软お妹 2024-11-26 03:57:36

您应该能够通过在每个表格单元格内放置一个 UIScrollView 来做到这一点。然后将图像放置在 UIScrollView 中。

因此,在您的 UITableView 中,您将实现这样的方法 -

- (SlideCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

static NSString *CellIdentifier = @"Cell";

SlideCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    cell = [[[SlideCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}

// Configure the cell.

return (SlideCell *)cell;
}

实现您的 SlideCell 以包含 UIScrollView

#import <UIKit/UIKit.h>


@interface SlideCell : UITableViewCell {
      UIScrollView *slider;
}
-(void)setLabel:(NSString *)t;
@property (nonatomic, retain) UIScrollView *slider;
@end

编辑:您应该查看 Apple 的 HIG 看看这是否可以接受。通常,UITableView 用于显示部分信息,您将使用详细视图来显示更多信息。

You should be able to do this by placing a UIScrollView inside each table cell. Then place the image inside the UIScrollView.

So in your UITableView, you would implement a method like so --

- (SlideCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

static NSString *CellIdentifier = @"Cell";

SlideCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    cell = [[[SlideCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}

// Configure the cell.

return (SlideCell *)cell;
}

Implement your SlideCell to contain a UIScrollView

#import <UIKit/UIKit.h>


@interface SlideCell : UITableViewCell {
      UIScrollView *slider;
}
-(void)setLabel:(NSString *)t;
@property (nonatomic, retain) UIScrollView *slider;
@end

EDIT : You should review Apple's HIG to see if this is acceptable. Typically, the UITableView is used to show part of the information and you would use a detail view to show more.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文