javascript

git

python

java

git-remote

github

django

c#

reactjs

c++

scrum

kubernetes

ruby-on-rails

.net

.net-framework-version

operators

git-fetch

typescript

user-experience

chmod

iPhone-是否可以将UITableView配置为允许多选?

对于iPhone,是否可以配置UITableView使其允许多选?

我已经尝试为每个UITableViewCell覆盖-setSelected:animated:,但是尝试捏合所需的行为非常棘手,因为很难将真正的未选择项与UITableView认为由于选择了另一个单元格而未选择的项分开!

希望有人能帮忙!

谢谢,

缺口。

trans by 2020-08-12T10:08:27Z

ios-如何滚动到UITableView的确切末端?

我有一个UITableView,其中装有动态高度的单元格。 从视图控制器中推送视图控制器时,我希望表格滚动到底部。

我已经尝试使用contentOffsettableView scrollToRowAtIndexPath,但是我仍然无法获得理想的完美解决方案。

谁能帮我解决这个问题?

这是我要滚动的代码:

let indexPath = NSIndexPath(forRow: commentArray.count-1, inSection: 0)
tableView.scrollToRowAtIndexPath(indexPath, atScrollPosition: .Bottom, animated: true)
trans by 2020-08-11T20:07:32Z

ios-轻按一下即可打开和关闭UITableViewCell复选标记

我正在做一个tableview

我希望能够点击每个单元格,并在点击时在单元格上显示一个选中标记

现在,我有一些代码可以完成这项工作:

// checkmarks when tapped

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    let section = indexPath.section
    let numberOfRows = tableView.numberOfRowsInSection(section)
    for row in 0..<numberOfRows {
        if let cell = tableView.cellForRowAtIndexPath(NSIndexPath(forRow: row, inSection: section)) {
            cell.accessoryType = row == indexPath.row ? .Checkmark : .None
        }
    }
}

但是这段代码只选择一个部分中的1个单元格(我有5个部分)

我需要它来选择任何地方的任何单元格

另外,当我上下拖动屏幕时,我也会打勾

视图控制器

class ViewController: UIViewController, UITableViewDataSource {                        //class and subclass                  |)
//---------------------------------------------------------------------------------------------------------------------------/
    // Variable and constant, also IBAOutlet

    let section1 =
       ["this is used",
        "this is used to test",
        "this is used to test the lenght",
        "this is used to test the lenght of the text",
        "this is used to test the lenght of the text",
        "this is used to test the lenght of the text",
        "this is used to test the lenght of the text",
        "this is used to test the lenght of the text",
        "this is used to test the lenght of the text",]
    let section2 =
       ["this is used to test the lenght of the text"]
    let section3 =
       ["this is",
        "this is ",]


    @IBOutlet weak var scoreshow: UILabel!
    @IBOutlet weak var reset: UIButton!
    @IBOutlet weak var tableView: UITableView!

// --------------------------------------------------------------------------------------

    override func viewDidLoad() {
        super.viewDidLoad()
    }

    override func didReceiveMemoryWarning() {

        super.didReceiveMemoryWarning()
    }
//----------------------------------------------------------------------------------------
    // checkmarks when tapped

    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath)
    {
        if let cell = tableView.cellForRowAtIndexPath(indexPath) {
            if cell.accessoryType == .Checkmark
            {
                cell.accessoryType = .None
            }
            else
            {
                cell.accessoryType = .Checkmark
            }
        }    
    }
//----------------------------------------------------------------------------------------
    //number of sections for the table

    func numberOfSectionsInTableView(tableView: UITableView) -> Int {
        return 5
    }
//----------------------------------------------------------------------------------------
    //Calculate the amount of rows

    func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int
    {
        return self.section1.count;
    }
//----------------------------------------------------------------------------------------
    //Cells text label and config

    func tableView(tableView: UITableView,cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
    {
        let cell:UITableViewCell = UITableViewCell(style:UITableViewCellStyle.Default, reuseIdentifier:"cell")
        cell.textLabel!.text = section1[indexPath.row]
        cell.textLabel!.numberOfLines = 0

        return cell
    }

//----------------------------------------------------------------------------------------

    @IBAction func resetswitch(sender: UIButton) {




    }
//----------------------------------------------------------------------------------------

}
trans by 2020-08-11T17:11:35Z

ios-警告:尝试在已显示的*上显示*(空)

这是我的第一个iOS应用程序。

所以我有一个ItemDetailViewController.viewDidLoad()UISearchController,在这里我集成了UISearchBarUISearchController以过滤要显示的TableCell

override func viewDidLoad() {
    menuBar.delegate = self
    table.dataSource = self
    table.delegate = self
    let nib = UINib(nibName: "ItemCellTableViewCell", bundle: nil)
    table.registerNib(nib, forCellReuseIdentifier: "Cell")

    let searchButton = UIBarButtonItem(barButtonSystemItem: .Search, target: self, action: "search:")
    menuBar.topItem?.leftBarButtonItem = searchButton
    self.resultSearchController = ({
        let controller = UISearchController(searchResultsController: nil)
        controller.searchResultsUpdater = self
        controller.dimsBackgroundDuringPresentation = false
        return controller
    })()
    self.table.reloadData()
}

我还使用模态搜索,以打开元素的ItemDetailViewController.viewDidLoad(),在其中显示元素的详细信息。

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    self.index = indexPath.row
    self.performSegueWithIdentifier("ItemDetailFromHome", sender: self)
}

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if (segue.identifier == "ItemDetailFromHome") {
        let settingsVC = segue.destinationViewController as! ItemDetailViewController
        settingsVC.parent = self
        if self.isSearching == true  && self.searchText != nil && self.searchText != ""  {
            settingsVC.item = self.filteredItems[self.index!]
        } else {
            settingsVC.item = self.items[self.index!]
        }

    }
}

直到我尝试显示ItemDetailViewController.viewDidLoad()过滤后的元素(通过UISearchController),效果都很好。

我有以下消息:

Warning: Attempt to present <ItemDetailViewController: *>  on <HomeViewController: *> which is already presenting (null)

每次我都要使用ItemDetailViewController.viewDidLoad()函数,但是之后激活搜索时,我会遇到先前的错误。

任何想法 ? 我尝试使用以下异步调度,但未成功

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    self.index = indexPath.row
    dispatch_async(dispatch_get_main_queue(), { () -> Void in
        self.performSegueWithIdentifier("ItemDetailFromHome", sender: self)
    })
}
trans by 2020-08-11T16:56:54Z

iPhone-UITableView寄存器Nib:forCellReuseIdentifier:

我在WWDC视频中看到了这一点,但只是非常简短。 他们没有讨论如何创建实际的xib文件。

我有一个名为MyCustomCell的UITableViewCell子类。 在这里,我有几个属性UILabels,UIImageViews等...都设置为IBOutlets。

现在,在我的xib文件中...

如何设置为文件的所有者? 文件的所有者在哪里引用MyCustomCell类?

设置文件所有者后,如何将其与xib的根视图链接?

我尝试了一些设置,但使用它时总是出错。

哦,我用来注册的代码是...

self.cellNib = [UINib nibWithNibName:@"MyCustomCell" bundle:nil];
[self.tableView registerNib:self.cellNib forCellReuseIdentifier:@"CustomCell"];

谢谢

trans by 2020-08-10T22:32:06Z

ios-使用自动布局以编程方式更改框架

我有一个带有自动布局的UITableView,当GADBannerView出现在屏幕底部时,我需要减小高度。

不幸的是,使用自动布局无法修改框架。 解决方法是删除“自动布局”并手动设置框架。 这是非常危险的,因为我的所有应用程序都可以在3.5'和4.0'显示器上正常工作,并且删除自动布局会导致新的测试阶段和更多工作。

即使启用了自动布局,是否可以更改框架?

trans by 2020-08-10T07:26:40Z

ios-当每个单元格高度为动态时,何时为表格视图计算heightForRowAtIndexPath?

我已经看过这个问题很多次了,但令人惊讶的是,我没有看到一个一致的答案,所以我自己尝试一下:

如果您有一个包含自己的自定义UITableViewCells的表视图,其中包含必须在运行时确定高度的UITextViews和UILabel,那么应该如何确定heightForRowAtIndexPath中每一行的高度?

最明显的第一个想法是通过计算然后将cellForRowAtIndexPath内的单元格内每个视图的高度相加来计算每个单元格的高度,并存储最终的总高度以供以后检索。

但是,这将不起作用,因为cellForRowAtIndexPath被称为AFTER heightForRowAtIndexPath。

我唯一能想到的就是在viewDidLoad内进行所有计算,然后创建所有UITableViewCells,计算单元格高度并将其存储在UITableViewCell子类内的自定义字段中,然后将每个单元格放置在NSMutableDictionary中,并将indexPath作为 键,然后使用cellForRowAtIndexPath和heightForRowAtIndexPath内部的indexPath简单地从字典中检索单元格,返回自定义高度值或单元格对象本身。

这种方法似乎是错误的,因为它没有使用dequeueReusableCellWithIdentifier,而是将所有单元一次加载到控制器中的字典中,并且委托方法除了从字典中检索正确的单元外,什么也没做。

我看不出有其他方法可以做到。 这是一个坏主意吗-如果是的话,正确的方法是什么?

trans by 2020-08-10T06:43:06Z

ios-UITableView编辑模块

我有UITableView,我尝试在编辑模式下默认加载它。 问题是当我这一行table.editing=TRUE;我的行消失时,我实现了以下方法:

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath 
{
// Return NO if you do not want the specified item to be editable.
return YES;
}

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath 
{
return UITableViewCellEditingStyleDelete;
}


 - (BOOL)tableView:(UITableView *)tableView shouldIndentWhileEditingRowAtIndexPath:(NSIndexPath *)indexPath 
 {
 return NO;
 }

但没有运气。 我该怎么办?

trans by 2020-08-10T00:36:57Z

ios-如何在UITableView中实现UISearchController-SWI

我是Swift的新手,我正尝试向UITableView类中的@property (strong, nonatomic) UISearchController *searchController; UITableViewController *searchResultsController = [[UITableViewController alloc] init]; // Init UISearchController with the search results controller self.searchController = [[UISearchController alloc] initWithSearchResultsController:searchResultsController]; // Link the search controller self.searchController.searchResultsUpdater = self; 添加搜索功能。 我在Google上搜索了很多,发现UIViewController已被弃用,并由UISearchController代替。 当我尝试搜索教程时,没有找到专门针对UITableView的教程。其中一些是在UITableViewController中实现的。因此,这是我的问题:

  1. 我们可以在UITableView类别的UITableView中实现@property (strong, nonatomic) UISearchController *searchController; UITableViewController *searchResultsController = [[UITableViewController alloc] init]; // Init UISearchController with the search results controller self.searchController = [[UISearchController alloc] initWithSearchResultsController:searchResultsController]; // Link the search controller self.searchController.searchResultsUpdater = self; 吗? (我想我们可以)

  2. 如果可以的话,请转换用Objective-C编写的这些代码行。 或者,如果有一些非常好的教程,请告诉我。

    @property (strong, nonatomic) UISearchController *searchController;
    
    UITableViewController *searchResultsController = [[UITableViewController alloc] init];
    
    // Init UISearchController with the search results controller
     self.searchController = [[UISearchController alloc] initWithSearchResultsController:searchResultsController];
    
    // Link the search controller
    self.searchController.searchResultsUpdater = self;
    

资源

编辑:我正在尝试将搜索结果更新程序分配为

class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate, UISearchResultsUpdating {

    override func viewDidLoad() {

       super.viewDidLoad()
       self.view.backgroundColor = UIColor.blackColor() 
       self.addTableViewWithSection() 
       self.searchResultsController = UITableViewController()           
       var controller = UISearchController(searchResultsController: nil)            
       controller.searchResultsUpdater = self           
       controller.dimsBackgroundDuringPresentation = false   
    }
}

*但是在行controller.searchResultsUpdater = self上我得到了错误,因为无法将类型“ ViewController”的值分配给类型“ UISearchResultsUpdating?”的值 ..所以我真的怀疑我是否可以在UIViewController类型类中使用UISearchController。

trans by 2020-08-09T04:25:26Z

iPhone-如何在Interface Builder中将导航栏添加到UITableViewController?

界面构建器不允许我单击并将导航栏拖放到“表视图控制器”上!!! 真令人沮丧。

我想要的只是一个带有编辑按钮的表格视图(在interface-builder中完成)。 如果这不可能,那么我如何通过编程添加导航栏?

提前致谢。

trans by 2020-08-09T01:27:40Z

iPhone-UITableView多个选择

如何将UITableView添加到基于视图的应用程序中,用户将在其中单击多个单元格,并且将其变为选中状态,就像Clock应用程序的“ New Alarm”设置名为“ Repeat”一样(Clock> Alarms> +> 重复),如何获取数组中所有选定的单元格?

trans by 2020-08-04T07:23:45Z

iPhone-在UITableView中,cell.detailTextLabel.text无法正常工作...为什么?

UITableView中,我具有以下内容:

cell.textLabel.text = @"label";
cell.detailTextLabel.text = @"detail";

UITableView如预期般显示,但没有诊断,但根本没有出现detailTextLabel。 我期望的是,“详细”文本将出现在单元格的第二行中,在“正常”文本下方,并且可能使用较小的字体。

在此处的另一个帖子中也问了同样的问题,用户“ jbrennan”回答说,tableview单元格样式必须不是UITableView。但是,似乎只有两种可能的样式,即detailTextLabelUITableViewCellStyleGrouped。 详细标签不会出现)。

我在文档中没有看到其他单元格样式吗? UITableView在上次更新中是否发生更改,并且detailTextLabel不再可用? 我是否需要做一些额外的工作才能使其显示? 有什么建议?

我正在使用xcode 3.2.5并为iPhone 4.2模拟器构建。

trans by 2020-08-02T09:03:48Z

ios-向Storyboard-IB中的原型单元添加项目时出现奇怪的错误

我有一个很大的项目(约20个场景)。 其中之一是带有自定义UITableViewController类的TableViewController。 我给了单元格一个重用标识符,并为其添加了标签。 当我尝试将Ctrl + Drag标签拖到UITableViewController头文件以创建插座时,出现以下错误:

错误:非法配置:连接“ tableInfoView”不能具有 原型对象为其目的地。

这是什么? 我是否忽略了明显的东西? 还是我需要创建一个自定义单元类并将出口拖到该单元格上? 如果是这样,我该如何从UITableViewController指定为每个单元格唯一显示的数据?

trans by 2020-08-02T06:54:10Z

iPhone-UITableView数据源必须从tableView:cellForRowAtIndexPath返回单元格:异常

我实际上看不到我的错误:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
  static NSString *CellIdentifier = @"Cell";

  FriendTableViewCell *cell = (FriendTableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
  if (cell == nil) {
      cell = [[[FriendTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
      [[NSBundle mainBundle] loadNibNamed:@"FriendTableViewCell" owner:self options:nil];
      cell = friendCell;
  }
  cell.lblNickname.text =  @"Tester";
  return cell;
}

我究竟做错了什么? 我检查了两次。。但看不到错误。

谢谢你的帮助!

trans by 2020-07-31T14:27:32Z

iPhone-如何“取消” UIStoryBoardSegue

有谁知道如何有条件地“停止” segue过渡:

我的表格视图单元代表可以在“详细”视图中查看的产品,否则无法! (取决于几件事)

现在,我的应用程序将所有产品视为“已解锁”:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    NSIndexPath *selectedRowIndex = [self.tableView indexPathForSelectedRow];
    ListaProdottiController *prodottiViewController = [segue destinationViewController];
    prodottiViewController.blocco = [self.fetchedResultsController objectAtIndexPath:selectedRowIndex];
}

此时,如何取消行选择=>向下钻取?

trans by 2020-07-27T07:46:20Z

ios-如何滚动到IOS7 UITableView的顶部?

在IOS6中,我有以下代码滚动到UITableView的顶部

[tableView setContentOffset:CGPointZero animated:YES];

在IOS7中,这不再起作用。 表格视图并没有完全滚动到顶部(而是几乎)。

trans by 2020-07-27T04:05:06Z

ios-启动屏幕可能未设置自定义类名

我试图将自定义类添加到表视图单元格中,但是在添加它后出现以下错误:

enter image description here

我经常读到我不能在LaunchScreen中使用自定义类,但是我没有碰过这个文件。 谁能帮我?

enter image description here

这是我对主界面和启动界面的常规设置。

我正在使用Swift。

trans by 2020-07-26T10:59:52Z

iPhone-UITableView滚动甚至

我想检测mytable视图是否已滚动,我尝试了所有如下触摸事件:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
  {
    [super touchesBegan:touches withEvent:event];
    //my code
  }

但是似乎所有的触摸事件都不响应滚动,而是仅在触摸,移动单元格等时才响应

有没有一种方法可以检测UITableView的滚动事件?

trans by 2020-07-26T04:12:51Z

iOS-UIGestureRecognizer和UITableViewCell issu

我正在以cellForRowAtIndexPath:方法将didSwipe附加到UITableViewCell上,如下所示:

- (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];

        UISwipeGestureRecognizer *gesture = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(didSwipe:)];
        gesture.direction = UISwipeGestureRecognizerDirectionRight;
        [cell.contentView addGestureRecognizer:gesture];
        [gesture release];
    }
    return cell;
}

但是,在成功滑动时,总是会两次调用didSwipe方法。 最初我以为这是因为手势开始和结束,但是如果我注销gestureRecognizer本身,它们都处于“ Ended”状态:

-(void)didSwipe:(UIGestureRecognizer *)gestureRecognizer {

    NSLog(@"did swipe called %@", gestureRecognizer);
}

安慰:

2011-01-05 12:57:43.478 App[20752:207] did swipe called <UISwipeGestureRecognizer: 0x5982fa0; state = Ended; view = <UITableViewCellContentView 0x5982c30>; target= <(action=didSwipe:, target=<RootViewController 0x5e3e080>)>; direction = right>
2011-01-05 12:57:43.480 App[20752:207] did swipe called <UISwipeGestureRecognizer: 0x5982fa0; state = Ended; view = <UITableViewCellContentView 0x5982c30>; target= <(action=didSwipe:, target=<RootViewController 0x5e3e080>)>; direction = right>

我真的不知道为什么。 我显然尝试检查Ended状态,但这无济于事,因为它们都以“ Ended”的形式出现...有什么想法吗?

trans by 2020-07-24T19:56:44Z

iOS-致命错误:尽管已实现,但init(coder :)尚未实现错误

我收到错误消息:

致命错误:尚未实现init(coder :)

对于我的自定义UITableViewCell。该单元未注册,在情节提要中以及使用dequeasreusablecell时具有标识符单元。 在自定义单元格中,我的初始化为:

码:

override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
    print("test")
    super.init(style: style, reuseIdentifier: reuseIdentifier)
}

required init?(coder aDecoder: NSCoder) {
    fatalError("init(coder:) has not been implemented")
}

但是我仍然有错误。 谢谢。

trans by 2020-07-24T12:12:24Z

1 2 3 4 5 6 7 8 9 10 11 12 13 下一页 共13页