小编Mee*_*shi的帖子

UIKeyboardWillShowNotification未在iOS 5中调用未对接的键盘

我发现当出现未对接/分离的键盘时,UIKeyboardWillShowNotificationUIKeyboardDidShowNotification没有生成iOS 5.例如,点击文本字段以显示键盘(生成通知),取消键盘,点击文本字段以关闭键盘,再次点击文本字段以显示未停靠的键盘(生成通知) .

有没有办法检测键盘何时出现,无论它是否已停靠?

uikeyboard ios5

13
推荐指数
2
解决办法
6396
查看次数

Keychain和NSUserDefault之间的区别?

我是新手objective C,我创建了一个应用程序,因为我使用了两个NSUserDefaultKeychain存储了我的用户名和密码.但我无法区分两者.请帮助区分两者.

谢谢.

objective-c keychain nsuserdefaults ios swift

13
推荐指数
3
解决办法
5480
查看次数

iOS 7 MPMoviePlayerController搜索转发按钮将视频带到结束并显示黑屏

我在iOS 7中遇到了MPMoviePlayerController的问题.我进入全屏,然后点击(只需点击一下)搜索转发按钮(>> |),视频播放结束并给出带有文本"正在加载"的黑屏在标题上.

我注册了" MPMoviePlayerPlaybackStateDidChangeNotification "的通知.

**[[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(moviePlayerPlaybackStateDidChange:)
                                                 name:MPMoviePlayerPlaybackStateDidChangeNotification
                                               object:self.player];**
Run Code Online (Sandbox Code Playgroud)

单击"向前搜索"按钮不会触发它.

同时注册" MPMoviePlayerPlaybackDidFinishNotification "

**[[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(moviePlayerPlaybackDidFinish:)
                                                 name:MPMoviePlayerPlaybackDidFinishNotification
                                               object:nil];**
Run Code Online (Sandbox Code Playgroud)

我点击了"向前搜索"按钮就触发了" MPMovieFinishReasonPlaybackEnded "事件.谁知道原因?这是苹果中的一个错误吗?

我需要停止在单击时显示黑屏的行为,或者只是禁用单击"向前搜索"按钮以便不会发生任何事情.

任何人都知道如何实现这一目标?

objective-c mpmovieplayercontroller ios

13
推荐指数
1
解决办法
5962
查看次数

如何在Objective-C中设置文本字段的委托?

我想UITextField通过将其限制为四个字符来自定义a .我正在尝试了解代理如何工作Objective-C并已经完成以下步骤来实现此功能,仍然没有运气获得可行的解决方案.

1)创建了一个LimitedLengthTextField objective-c类.制作类型类UITextField并接受<UITextFieldDelegate>类型的对象.

LimitedLengthTextField.h:

@interface LimitedLengthTextField : UITextField <UITextFieldDelegate>
@end
Run Code Online (Sandbox Code Playgroud)

2)在LimitedLengthTextField.m中实现了以下方法:

@implementation LimitedLengthTextField

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
    NSUInteger newLength = [textField.text length] + [string length] - range.length;
    return (newLength > 4) ? NO : YES;
}

@end
Run Code Online (Sandbox Code Playgroud)

3)在我的CreateAccount类中导入"LimitedLengthTextField.h",并尝试按如下方式设置UITextField"ssnTextField"的委托viewDidLoad(我的app接受用户SSN的最后4位数字).

// Set the custom SSN textfield delegate
LimitedLengthTextField *custTextField = [[LimitedLengthTextField alloc] init];
[self.ssnTextField setDelegate:custTextField];
Run Code Online (Sandbox Code Playgroud)

基于我对Objective-C代表的有限理解,我现在创建了一个类,实现了我想要的委托方法,然后创建了该类的实例并将其分配给我的UITextView对象.我错过了什么?

delegates objective-c uitextfield ios

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

将视频播放到UITableView中

我在这里看了几篇关于直播的帖子video/audio.不幸的是,似乎没有任何"好"的解决方案.

我想SDWebImageView为图像提供相同的视频功能.

现在,我正在使用以下代码: -

NSURL *url=[[NSURL alloc] initWithString:@"http://www.ebookfrenzy.com/ios_book/movie/movie.mov"];
MPMoviePlayerController *moviePlayer=[[MPMoviePlayerController alloc] initWithContentURL:url];
moviePlayer.controlStyle=MPMovieControlStyleDefault;
moviePlayer.shouldAutoplay=YES;
Run Code Online (Sandbox Code Playgroud)

但是当我滚动时tableview,所有视频都会一次又一次地下载.那么我怎么能停止下载呢?

是否有更好的解决方案来播放视频UITableView?相同的Facebook,Instagram和Vine Apps在做什么

objective-c mpmovieplayercontroller video-streaming uitableview ios

11
推荐指数
2
解决办法
5242
查看次数

当用户触摸注释时崩溃与无法识别的选择器

我有一个用于显示地图和自定义注释的应用程序.当用户触摸注释时,我的应用程序崩溃.它仅在iOS 7中发生.它适用于iOS 6和iOS 5.

以下是控制台中显示的崩溃报告:

ERROR: Trying to select an annotation which has not been added
-[__NSSetM coordinate]: unrecognized selector sent to instance 0x18c9d580
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSSetM coordinate]: unrecognized selector sent to instance 0x18c9d580'
*** First throw call stack:
(
    0   CoreFoundation                      0x020415e4 __exceptionPreprocess + 180
    1   libobjc.A.dylib                     0x016918b6 objc_exception_throw + 44
    2   CoreFoundation                      0x020de903 -[NSObject(NSObject) doesNotRecognizeSelector:] + 275
    3   CoreFoundation                      0x0203190b ___forwarding___ + 1019
    4   CoreFoundation                      0x0206e46e __forwarding_prep_1___ + 14
    5   MapKit …
Run Code Online (Sandbox Code Playgroud)

mkannotationview ios

10
推荐指数
1
解决办法
2076
查看次数

WKWebView cookie存储位置

我正在转换应用程序UIWebView,WKWebView并且有一个自动登录功能,该功能是通过保存带有用户身份验证信息的cookie来处理的NSHTTPCookieStorage.但是,WKWebView似乎没有查看cookie的这个位置,因此每次都会提示用户使用登录屏幕.

是否需要激活WKWebView正确使用cookie?

objective-c ios wkwebview

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

iOS中WebRTC的RTCDataChannel的实现

我使用ISBX/apprtc-ios代码进行视频聊天实现.这项工作在iPhone和模拟器中完美无缺.我想在两个对等体之间发送文本/字符串数据,我正在使用RTCDataChannel类.

以下是我的实现,我无法建立连接.它总是给出状态kRTCDataChannelStateConnecting如何连接RTCDataChannel?适用于iOS的WebRTC RTCDataChannel是否有可用的实现?

- (void)createNewDataChannel {
    if (self.clientDataChannel) {
        switch(self.clientDataChannel.state) {
            case kRTCDataChannelStateConnecting:
                NSLog(@"kRTCDataChannelStateConnecting");
                break;
            case kRTCDataChannelStateOpen:
                NSLog(@"kRTCDataChannelStateOpen");
                break;
            case kRTCDataChannelStateClosing:
                NSLog(@"kRTCDataChannelStateClosing");
                break;
            case kRTCDataChannelStateClosed:
                NSLog(@"kRTCDataChannelStateClosed");
                break;
            default:
                NSLog(@"Unknown");
        }
        return;
    }
    if (self.peerConnection == nil) {
        NSLog(@"Peerconnection is nil");
    }

    RTCDataChannelInit *DataChannelInit = [[RTCDataChannelInit alloc] init];
    DataChannelInit.maxRetransmits = 0;
    DataChannelInit.isOrdered=false;
    DataChannelInit.maxRetransmitTimeMs = -1;
    DataChannelInit.isNegotiated = false;
    DataChannelInit.streamId = 25;
    RTCDataChannel *dataChannel =[_peerConnection createDataChannelWithLabel:@"commands" config:DataChannelInit];
    dataChannel.delegate=self;
    self.clientDataChannel = dataChannel;

    if (self.clientDataChannel == nil) { …
Run Code Online (Sandbox Code Playgroud)

objective-c ios webrtc swift

10
推荐指数
1
解决办法
2512
查看次数

在iOS中的AVCaptureDevice输出上设置GrayScale

我想在我的应用程序中实现自定义相机.所以,我正在创建这个相机AVCaptureDevice.

现在我只想在我的自定义相机中显示灰度输出.所以我试图用这个setWhiteBalanceModeLockedWithDeviceWhiteBalanceGains:AVCaptureWhiteBalanceGains.我正在使用AVCamManual:将AVCam扩展为使用手动捕获.

- (void)setWhiteBalanceGains:(AVCaptureWhiteBalanceGains)gains
{
    NSError *error = nil;

    if ( [videoDevice lockForConfiguration:&error] ) {
        AVCaptureWhiteBalanceGains normalizedGains = [self normalizedGains:gains]; // Conversion can yield out-of-bound values, cap to limits
        [videoDevice setWhiteBalanceModeLockedWithDeviceWhiteBalanceGains:normalizedGains completionHandler:nil];
        [videoDevice unlockForConfiguration];
    }
    else {
        NSLog( @"Could not lock device for configuration: %@", error );
    }
}
Run Code Online (Sandbox Code Playgroud)

但为此,我必须将RGB增益值传递到1到4之间.所以我创建了这个方法来检查MAX和MIN值.

- (AVCaptureWhiteBalanceGains)normalizedGains:(AVCaptureWhiteBalanceGains) gains
{
    AVCaptureWhiteBalanceGains g = gains;

    g.redGain = MAX( 1.0, g.redGain );
    g.greenGain = MAX( 1.0, g.greenGain ); …
Run Code Online (Sandbox Code Playgroud)

objective-c ios avcapture avcapturedevice swift

10
推荐指数
1
解决办法
1657
查看次数

如何以PDF格式获取UITableView的快照

我有一个UITableView填充了一些数据,但由于它包含的数据比屏幕的可视区域更多的单元格,我只能设法得到它的快照,我想知道是否有其他方法我可以获得整个tableview快照在pdf ..这是我尝试过的感谢

- (IBAction)clickMe:(id)sender
{
    UIView *viewToRender = self.myTableView;
    CGPoint contentOffset = self.myTableView.contentOffset;

    UIGraphicsBeginImageContext(viewToRender.bounds.size);

    CGContextRef ctx = UIGraphicsGetCurrentContext();

    //  KEY: need to translate the context down to the current visible portion of the tablview
    CGContextTranslateCTM(ctx, 0, -contentOffset.y);

    [viewToRender.layer renderInContext:ctx];

    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
    UIImageView *myImage=[[UIImageView alloc]initWithImage:image];

    UIGraphicsEndImageContext();

    [self createPDFfromUIViews:myImage saveToDocumentsWithFileName:@"PDF Name"];

}



- (void)createPDFfromUIViews:(UIView *)myImage saveToDocumentsWithFileName:(NSString *)string
{
    NSMutableData *pdfData = [NSMutableData data];

    UIGraphicsBeginPDFContextToData(pdfData, myImage.bounds, nil);
    UIGraphicsBeginPDFPage();
    CGContextRef pdfContext = UIGraphicsGetCurrentContext();


    // draws rect to the view and …
Run Code Online (Sandbox Code Playgroud)

pdf-generation uitableview ios

8
推荐指数
2
解决办法
5355
查看次数