Iphone 有没有办法使Facebook按钮在UITableView中正确显示?

Iphone 有没有办法使Facebook按钮在UITableView中正确显示?,iphone,api,facebook,sdk,Iphone,Api,Facebook,Sdk,我正在尝试在我的iPhone应用程序中使用Facebook Connect功能。 我想知道如何在我的UITableView中正确排列按钮: - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"Cell"; UITableViewCell *cell

我正在尝试在我的iPhone应用程序中使用Facebook Connect功能。 我想知道如何在我的UITableView中正确排列按钮:

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

    static NSString *CellIdentifier = @"Cell";

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

    if (indexPath.section == 0){
        if (indexPath.row == 0){

        }
    }
    if (indexPath.section == 1){
        if (indexPath.row == 0){
            cell.textLabel.text = @"Connect with Facebook";
            cell.accessoryView = login;

        }
    }

    return cell;
我尝试过使用accessoryView,但结果如下:

此外,该按钮仅在我点击单元格时出现

如果可以的话,请帮忙


谢谢。

布局大部分静态UITableView的最简单方法是使用InterfaceBuilder。

布局大部分静态UITableView的最简单方法是使用InterfaceBuilder。

由于“附件”,因此
附件视图肯定会被框到右边通常指表格单元格右侧的小expando箭头小部件,用于打开新页面等


如果将FB按钮添加为单元格视图的子视图,则可以对单元格的布局产生很大的影响,并将其放置在任意位置。您应该非常明确地检查一下,它演示了如何完成一系列自定义单元格类型

accessoryView
肯定会被框到右边,因为“附件”通常指的是表格单元格右侧的小expando箭头小部件,用于打开新页面等


如果将FB按钮添加为单元格视图的子视图,则可以对单元格的布局产生很大的影响,并将其放置在任意位置。您应该非常明确地检查一下,它演示了如何完成一系列自定义单元格类型

我刚刚遇到了同样的问题。我的工作代码如下所示:

FBLoginButton* fbbutton = [[FBLoginButton alloc] initWithFrame:CGRectMake(cellwidth - 30.0 - 10.0,
                                                                          (cellheight - 30.0) / 2.0,
                                                                          90.0, 30.0)];
fbbutton.style = FBLoginButtonStyleNormal;
fbbutton.session = session;

cell.accessoryView = fbbutton;
cell.textLabel.text = @"Facebook";
[fbbutton release];
(显然,我使用常量而不是硬编码Facebook按钮的大小。)

放置按钮的两个关键位是设置框架和将按钮添加到accessoryView。(将其添加到contentView也可以,不过您可能需要手动添加标题。)


至于只在按下按钮时出现的按钮,我通过显式设置按钮样式来解决这个问题。我想这是Facebook Connect库中的一个bug。

我刚刚遇到了同样的问题。我的工作代码如下所示:

FBLoginButton* fbbutton = [[FBLoginButton alloc] initWithFrame:CGRectMake(cellwidth - 30.0 - 10.0,
                                                                          (cellheight - 30.0) / 2.0,
                                                                          90.0, 30.0)];
fbbutton.style = FBLoginButtonStyleNormal;
fbbutton.session = session;

cell.accessoryView = fbbutton;
cell.textLabel.text = @"Facebook";
[fbbutton release];
(显然,我使用常量而不是硬编码Facebook按钮的大小。)

放置按钮的两个关键位是设置框架和将按钮添加到accessoryView。(将其添加到contentView也可以,不过您可能需要手动添加标题。)


至于只在按下按钮时出现的按钮,我通过显式设置按钮样式来解决这个问题。我猜这是Facebook Connect库中的一个bug。

您没有引用实例化并将按钮添加到表中的部分-或者是在InterfaceBuilder中完成的?这是在viewDidLoad:-(void)viewDidLoad{[super viewDidLoad];login=[[FBLoginButton alloc]init]autorelease];}好的,但是我仍然不明白如何将FBLoginButton的实例添加到表中。您没有引用实例化并将按钮添加到表中的部分-或者这是在InterfaceBuilder中完成的?这是在viewDidLoad:-(void)viewDidLoad{[super viewDidLoad];login=[[FBLoginButton alloc]init]autorelease];}中的代码中完成的好的,但我仍然不明白如何将FBLoginButton的实例添加到表中。