小编pad*_*apa的帖子

IBOutlet在自定义UIView中是零(使用STORYBOARD)

我有一个自定义UIView类.在里面我宣布了一个 IBOutlet属性UIImageView.

#import <UIKit/UIKit.h>

@interface SettingItem : UIView{

}

@property (strong, nonatomic) IBOutlet UIImageView *myImage;

@end
Run Code Online (Sandbox Code Playgroud)

现在我正在使用故事板.有一个viewcontroller.我拖到UIView了viewcontroller.我拖了一个UIImageView作为上面的子视图UIView.我将"SettingItem"类设置UIView为storyboard.我通过SettingItem从实用程序窗口的出口正常拖动将插座连接到myImage .


SettingItem 履行

#import "SettingItem.h"

@implementation SettingItem

- (id)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self) {
        // Initialization code
        [self baseInit];
    }
    return self;
}

-(id) initWithCoder:(NSCoder *)aDecoder{
    self = [super initWithCoder:aDecoder];
    if (self) {
        // Initialization code
        [self baseInit];
    }
    return self;
}

- (void) baseInit{ …
Run Code Online (Sandbox Code Playgroud)

objective-c storyboard uiview iboutlet

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

额外20px顶部插入UIScrollView问题

有人问过有关这个问题的问题.我尝试了一切,无法解决我的问题.我挣扎了2个小时,现在我在这里张贴.

问题:UIScrollView的顶级contentInset总是有20px的额外空间.

我有viewcontroller xib,而不是storyboard.

首先,相关问题及其在stackoverflow上的解决方案假设UIScrollView是UIViewController的根视图.但我的滚动视图不是根视图,因此可能为什么

self.automaticallyAdjustsScrollViewInsets = NO;

不管用

  • 我有一个带有引导空间(0,superview)的HeaderView,尾随空格(0,超级视图),顶部空间(0,superview)和固定高度.
  • 标题视图下方是滚动视图,前导空格(0,superview),尾随空格(0,superview),底部空间(0,superview)和垂直空间(0,标题视图)
  • 滚动视图内部有一个内容视图.此视图具有前导(0),尾随(0),底部(0)和顶部(0)空间到scrollview.

这是额外的20 px顶部插图的屏幕截图.额外20px是UIScrollView的白线和浅灰色内容之间的黑色区域我无法修复此问题. 在此输入图像描述

难道我做错了什么?Autolayout约束似乎很好.

objective-c uiscrollview ios

11
推荐指数
3
解决办法
7994
查看次数

旋转CAShapeLayer也会移动位置

我正在创建一个CAShapeLayer.我正在为它添加旋转动画.不知何故转化结果很奇怪.子图层随着旋转一起移动.我需要它在固定的中心/位置(锚)并旋转.我知道它弄乱了几何变换,但我无法做到正确.

我试过设置anchorpoint.我也跟着这篇文章

这是代码:

UIBezierPath *circle = [UIBezierPath bezierPathWithArcCenter:CGPointMake(75, 125)
                                                      radius:50
                                                  startAngle:0
                                                    endAngle:1.8 * M_PI
                                                   clockwise:YES];

CAShapeLayer *circleLayer = [CAShapeLayer layer];
[circleLayer setFrame:CGRectMake(200 - 50, 300 - 50, 100, 100)];
circleLayer.path   = circle.CGPath;
circleLayer.strokeColor = [UIColor orangeColor].CGColor;
[circleLayer setFillColor:[UIColor clearColor].CGColor];
circleLayer.lineWidth   = 3.0;

if ([circleLayer animationForKey:@"SpinAnimation"] == nil) {
    CABasicAnimation* animation = [CABasicAnimation animationWithKeyPath:@"transform.rotation"];
    animation.fromValue = [NSNumber numberWithFloat:0.0f];
    animation.toValue = [NSNumber numberWithFloat: 2 * M_PI];
    animation.duration = 10.0f;
    animation.repeatCount = INFINITY;
    animation.removedOnCompletion = NO;
    [circleLayer addAnimation:animation forKey:@"SpinAnimation"];
}

[self.view.layer addSublayer:circleLayer];
Run Code Online (Sandbox Code Playgroud)

objective-c calayer caanimation

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

JNI调用与常规Java调用交错 - 执行顺序是什么?

我最近一直在试验JNI,以便移植一些现有的C++库.

作为测试的一部分,我创建了一个简单的'helloworld'程序.我在C++中调用一个简单的本机函数,它只打印消息.我对执行程序时观察到的一些行为有点好奇 - 似乎所有本机函数消息/响应都在Java之后打印出来System.out.print.这是因为本机调用是在Java调用之后执行的,还是我应该忽略这种行为?

public static void main(String[] args) {
        HelloWorld app = new HelloWorld();
        System.out.println("say");
        app.print();

        System.out.println("what");
        app.print();
}
Run Code Online (Sandbox Code Playgroud)

输出如下所示:

say
what
hola, world !
hola, world !
Run Code Online (Sandbox Code Playgroud)

本机功能如下:

Java_HelloWorld_print(JNIEnv *env, jobject obj) {
    printf("hola, world !\n");
    return;
}
Run Code Online (Sandbox Code Playgroud)

java java-native-interface

6
推荐指数
1
解决办法
201
查看次数

使用 Ratchet 创建/管理私人房间?

我正在制作 iOS 聊天应用程序。在研究了所需的技术和协议后,我决定尝试使用 websockets。由于我们的堆栈顶部是基于 php 的原因,我开始了解棘轮作为 PHP 的 websockets。我通过阅读文档为 ios 前端制作了简单的聊天服务器。聊天工作得很好,我也很满意。我想知道如何创建单独的私人聊天室。是否需要为不同的房间运行不同的套接字事件循环实例?

我制作的示例服务器使用单个事件循环来管理用户连接并将消息分派到不同的连接/用户 ID。我真的很想创建私人聊天室,但没有找到任何我可以确信的信息。

我是否必须在此事件循环中虚拟地管理每个连接/用户 ID,例如通过控制消息的分发来决定哪些用户可以直接相互聊天?或者他们真的是一种单独的方式来做到这一点?这是我实现的文档中的事件循环示例:

   <?php
   use Ratchet\Server\IoServer;
   use Ratchet\Http\HttpServer;
   use Ratchet\WebSocket\WsServer;
   use MyApp\Chat;
   
       require dirname(__DIR__) . '/vendor/autoload.php';
   
       $server = IoServer::factory(
           new HttpServer(
               new WsServer(
                   new Chat()
               )
           ),
           8080
       );
   
       $server->run();
Run Code Online (Sandbox Code Playgroud)

我想说的是,我是一名 iOS/Android 开发人员,真的没有专家或对 Web 前端/后端技术有流利的知识。

php websocket phpwebsocket ratchet

6
推荐指数
1
解决办法
6527
查看次数

为什么run()只被调用一次?

考虑这个类,AnimationThread:

class AnimationThread implements Runnable {
    public void pause() {
        doAnimation = false;
    }

    public void doStart(){
        doAnimation = true;
    }

    @Override
    public void run() {
        // TODO Auto-generated method stub
        if (doAnimation) {
            //my code
        }

        try {
            Thread.sleep(500);
        } 
        catch (InterruptedException e) {

        }
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我开始onCreate一个活动的这个线程(只显示粗略的代码):

AnimationThread animRunnable = new AnimationThread();
animationThread = new Thread(animRunnable);
animationThread.start();
Run Code Online (Sandbox Code Playgroud)

但是run()只被调用一次(我追踪了一个日志来确认).我只是想知道,当我启动线程时,为什么run()不会在500次睡眠时反复调用.它被称为一次.

java multithreading android runnable

5
推荐指数
2
解决办法
4632
查看次数

堆栈中的保留字节:x86 汇编(64 位)

pushq   %rbp
movq    %rsp, %rbp
subq    $32, %rsp
Run Code Online (Sandbox Code Playgroud)

我对第三条指令中“$32”的解释有很大疑问。来自搜索和博客的信息表明,在上面的第三条指令中,我们为堆栈保留了某些“字节”空间。从文档来看,%rsp 是 64 位寄存器,%esp 是 32 位。

“$32”是否表示 32 个字节?($number 表示常量?)如果是,那么我们如何在 64 位寄存器上分配 32 个字节?以上指令是从“otool”生成的。我正在使用 macbook pro。

我只是想学习一些有关装配的小知识。

谢谢。

assembly x86-64 cpu-registers

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

在推送/本地通知权上显示自定义图像?

我收到了存折应用程序的通知,我保存了我买的电影票.通知在锁定屏幕上有2个图像:在左边它有我买电影票的原始应用程序的图标,在右侧它有存折票信息的图像.查看下面的截图:

在此输入图像描述

此通知是本地的,由Passbook应用程序生成.

首先,我想知道如何在右侧添加自定义图像,这不是应用程序图标,而是在应用程序中稍后生成的内容.我希望实现这一点,并没有太多关于它的信息.

其次,推送通知也可以吗?如是 ?有没有提到的文件?

编辑:我只是想知道可以在上面截图我可以共享吗?因为Passbook正在做.即使只是本地通知,我也需要解决方案.谢谢.

objective-c push-notification ios uilocalnotification

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

转移到SD卡

我知道移动到SD卡功能是从Android 2.2我可以知道是否有方法在我的程序中检测如果设备支持移动到SD卡功能,如果它支持它可以移动其他如果不支持比什么都不会发生(将在手机记忆中)

我的主要问题是我的应用程序支持从1.6到超过的所有设备,我无法使用

安卓的installLocation ="自动"

因为它不符合以下版本2.2.那么我是否必须以编程方式进行检查和启用,如果是这样的话?我希望你理解我的问题.

谢谢.

android

4
推荐指数
1
解决办法
1817
查看次数

MediaPlayer isPlaying()总是返回false

我在2部手机上测试.在一个设备中,即使正在播放,媒体播放器的播放()也始终返回false.但在其他设备(lg optimus gingerbread)中,isPlaying()返回true是否正在播放else返回false.

谁能告诉我为什么会这样?我的一些代码依赖于这个isPlaying()部分,我希望它能在所有设备上运行.

public void addSoundMedia(Context context, int resId){
    MediaPlayer mp = MediaPlayer.create(context, resId);
    mp.setVolume(1.0f, 1.0f);
    try{
    mPlayerList.add(mp);
    }
    catch(Exception e){}
}

public void playSoundMedia(int index){
    try{        
    mPlayerList.get(index).start();         
    }
        catch(Exception e){}
}


public MediaPlayer getPlayer(int index){
    return mPlayerList.get(index);
}
Run Code Online (Sandbox Code Playgroud)

现在我在打电话

mPlayer.getPlayer(currentPlayingPhraseIndex).isPlaying(); 
//which is now returning false. Previously i was returning true but now it always return false
Run Code Online (Sandbox Code Playgroud)

我也匹配了对象,这是现在的代码场景:

int phraseIndexToBePlayed = getRandomInteger(0, numberOfPhrasesSelected-1, randomPhraseGen); //get random index from 0 to (size of arraylist where i added my media) -1 …
Run Code Online (Sandbox Code Playgroud)

java android media-player

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

创建UIImageView的子类

我还没有找到UIImageView的选项,可以在创建objective-c类时从下拉列表中进行选择.我正在使用xcode 4.3.我想知道我们不允许扩展UIImageView类.或者我必须继承UIView?自定义UIImageView类的任何示例结构都会有所帮助.

谢谢

iphone uiimageview

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

NSArray initWithObjects:内存泄漏

这是我的代码:

    - (void)viewDidLoad{
[super viewDidLoad];

self.authorList = [[NSArray alloc] 
                   initWithObjects:@"Christie, Agatha", 
                   @"Archer, Jeffrey", nil];

self.title = @"Authors";
Run Code Online (Sandbox Code Playgroud)

}

我在分配和初始化数组作者列表的行中遇到内存泄漏.我试图将autorelease放在作者列表上,但它说"对象发送 - 自动释放发送了太多次".我还在学习内存管理.

格拉西亚斯.

iphone objective-c

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