小编Spa*_*het的帖子

有没有办法计算将视图从帧A转换到帧B所需的CGAffineTransform?

说,我有两个CGRects,CGRect A和CGRect B.我的UIView的框架与CGRect B相同,但我想创建一个动画,显示UIView从框架A转换到B.

我试图通过改变UIView的transform属性来做到这一点,所以我不必太乱用它的框架.但是,我需要CGAffineTransform来实现这一目标.计算此变换的最佳方法是什么?

core-graphics linear-algebra ios

16
推荐指数
2
解决办法
6786
查看次数

更改tableHeaderView的高度会隐藏单元格

在我的UITableView中,我有一个tableHeaderView,它应该根据内容调整自己的大小.调整大小很好,但是,tableHeaderView模糊了前几个单元格.显然更改tableHeaderView的框架不会重新组织视图的其余部分.

我已经打过电话[self.tableView layoutSubViews][self.tableView setNeedsLayout],但那些没有任何帮助.还尝试从Interface Builder中提供tableHeaderView一个插座来更改其上的框架,但这也不会重新组织tableView.

如何在不隐藏任何单元格的情况下更改tableHeaderView的大小,重新组织tableView的其余部分?

iphone layout frame uitableview

14
推荐指数
2
解决办法
8218
查看次数

如何在moviePlaybackDidFinish上停止MPMoviePlayerViewController的自动关闭?

一个MPMoviePlayerViewController以模态方式呈现,presentMoviePlayerViewControllerAnimated:当内容完成播放时自动解散.

我试图禁用它,因为之后我想播放其他内容.但是,即使我向NSNotificationCenter注册[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(movieFinishedCallback:) name:MPMoviePlayerPlaybackDidFinishNotification object:playerVC.moviePlayer];并设置了一些其他内容,它仍然会被驳回.

如何阻止MPMoviePlayerViewController自动解除自身?

更新:

作为澄清,这个问题只是关于取消自动解雇而不是处理残疾人"完成"按钮.所选答案反映出来.这是设计,因为我们假设开发人员添加他们自己的解雇MPMoviePlayerViewController的方法.但是,@ bickster的回答也涉及"完成"按钮.

mpmovieplayercontroller ios

7
推荐指数
2
解决办法
1万
查看次数

如何在使用Storyboard解除模态视图控制器之前推送viewController?

在为我的一个项目试用故事板时,我遇到了一些我没有很好解决方案的东西;

我有一个基于导航的应用程序,它显示了一个UITableViewController.tableView使用用户创建的元素填充.点击元素单元格会调出详细视图控制器.用户可以通过点击tableView中的按钮来创建新元素.这将打开一个模态视图,它将处理创建.

现在,当用户完成创建元素并解除模态视图控制器时,我希望用户看到相应的新细节视图控制器而不是tableview.但我无法弄清楚如何在故事板中实现这一目标.

有没有人有这个好的模式?

现在的情况

TableView --(tap create)--> creation modal view --(finish creating)--> TableView
Run Code Online (Sandbox Code Playgroud)

应该

TableView --(tap create)--> creation modal view --(finish creating)--> detail view
Run Code Online (Sandbox Code Playgroud)

objective-c uinavigationcontroller modalviewcontroller ios uistoryboard

7
推荐指数
1
解决办法
1871
查看次数

使用HTML文件初始化NSAttributedString将HTTP链接解析为文件URL

iOS 7允许使用HTML文件或数据初始化NSAttributedString.我想使用此功能,以便更容易在"关于"应用程序文本中插入链接.

为此,我使用以下代码初始化NSAttributedString:

NSURL *url = [[NSBundle mainBundle] URLForResource:@"test.html" withExtension:nil];
NSError *error = nil;
NSDictionary *options = nil;
NSDictionary *attributes = nil;
_textView.attributedText = [[NSAttributedString alloc] initWithFileURL:url options:options documentAttributes:&attributes error:&error];
Run Code Online (Sandbox Code Playgroud)

和包含以下内容的文件:

<html><body>
<p>This is a <a href=\"http://www.stackoverflow.com\">test link</a>. It leads to StackOverflow.<p>
</body></html>
Run Code Online (Sandbox Code Playgroud)

更新

上面的HTML仍然有试图在代码中使用它作为NSString的转义标记.删除逃脱使它工作得很好.还回答了我自己的问题.

结束更新

这样可以正常工作,并提供一个字符串,其中url格式正确且可单击.单击该链接将调用UITextView的委托-textView:shouldInteractWithURL:inRange:方法.但是,检查URL参数显示URL实际上具有以下绝对字符串:

file:///%22http://www.google.com/%22
Run Code Online (Sandbox Code Playgroud)

这显然没有打开相应的网页.我没有发现NSAttributedText上的文档足够清楚,以确定为什么会发生这种情况.

任何人都知道如何初始化NSAttributedString以生成适当的URL?

uitextview nsattributedstring uitextviewdelegate ios ios7

5
推荐指数
1
解决办法
2841
查看次数

有没有办法用 AVPlayer 区分直播流和点播文件流?

我正在尝试为多种类型的流媒体创建一个更通用的媒体控制器,并希望使 UI 适应流的类型;

  • 当它是点播文件流(即正在流式传输的单个 MP3 文件)时,您应该能够向前和向后查找。因此,搜索滑块应该是可见的。
  • 当它是直播时,无法向前和向后搜索,因此应该隐藏搜索滑块。

有什么方法可以从 AVPlayer(或者可能是 AVPlayerItem 或 AVAsset)确定流的类型是什么?

iphone cocoa-touch avfoundation live-streaming avplayer

4
推荐指数
2
解决办法
1409
查看次数

符合nscoding的对象不会写入文件

我想写一个Question对象数组到文件,但不知何故writeToFile没有做任何事情.一个问题有一个所有者和一组Answer对象.答案也有所有者.所有这三个都符合NSCoding协议(据我所知).

从下面的代码中,结果返回NO.不知道我做错了什么,因为我正在为所有事情实施NSCoding,对吧?

Question.h

#import <Foundation/Foundation.h>
#import "Owner.h"

@interface Question : NSObject <NSCoding> {
    NSString *questionId;
    NSString *questionRevision;
    NSString *text;
    NSDate *date;
    NSMutableArray *answers;
    NSString *page;
    NSNumber *questionLocation;

    Owner *owner;
}

@property (nonatomic, retain) NSString *questionId;
@property (nonatomic, retain) NSString *questionRevision;
@property (nonatomic, retain) NSString *text;
@property (nonatomic, retain) NSDate *date;
@property (nonatomic, retain) NSMutableArray *answers;
@property (nonatomic, retain) NSString *page;
@property (nonatomic, retain) NSNumber *questionLocation;
@property (nonatomic, retain) Owner *owner;

@end
Run Code Online (Sandbox Code Playgroud)

Question.m

#import "Question.h"
#import "Answer.h"

@implementation Question

@synthesize questionId, …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c nscoding

3
推荐指数
1
解决办法
3337
查看次数

如何正确使代码中的字幕 UITableViewCell 出队?

我正在尝试用纯代码创建一个带有常规非自定义.subtitle单元格的 UITableView。然而,下面的代码从来没有给我一个带有正确的单元格detailTextLabel,而是选择一个.default单元格。

public var cellIdentifier: String { return "wordsCell" }
public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell: UITableViewCell
    if let newCell = tableView.dequeueReusableCell(withIdentifier: cellIdentifier) {
        // Always succeeds, so it never goes to the alternative.
        cell = newCell
    }
    else {
        // This is never reached.
        cell = UITableViewCell(style: .subtitle, reuseIdentifier: cellIdentifier)
    }

    let word = wordAtIndexPath(indexPath: indexPath)
    cell.textLabel?.text = word.text
    cell.detailTextLabel?.text = word.subText

    return cell
}
Run Code Online (Sandbox Code Playgroud)

这显然是因为即使当前没有可用的单元格, …

uitableview swift swift3

3
推荐指数
1
解决办法
3240
查看次数