小编liv*_*ech的帖子

如何在仍显示焦点的同时为tvOS创建具有背景颜色的按钮?

我想要做的就是为所有状态的按钮添加背景颜色.但是我希望在tvOS故事板中使用系统按钮时保持"免费"获得的自动焦点阴影.到目前为止,我还没有找到允许这种情况的组合.

或者,我也有兴趣在按钮聚焦时以编程方式添加阴影的方法,但是没有子按钮(我还没有尝试过),我也不知道该怎么做.

uibutton tvos

10
推荐指数
3
解决办法
5720
查看次数

@synchronized块与GCD dispatch_async()

本质上,我有一组数据NSDictionary,但为方便起见,我设置了一些NSArrays,数据以几种不同的方式排序和过滤.数据将通过不同的线程(块)进入,我想确保一次只有一个块修改我的数据存储.

今天下午我遇到了设置调度队列的麻烦,随后偶然发现了一个关于@synchronized这个问题的帖子,这看起来几乎就像我想做的那样.

所以我现在拥有的是......

// a property on my object
@property (assign) dispatch_queue_t matchSortingQueue;

// in my object init
_sortingQueue = dispatch_queue_create("com.asdf.matchSortingQueue", NULL);

// then later...
- (void)sortArrayIntoLocalStore:(NSArray*)matches
{
    dispatch_async(_sortingQueue, ^{
      // do stuff...
    });
}
Run Code Online (Sandbox Code Playgroud)

我的问题是,我可以用以下内容替换所有这些吗?

- (void)sortArrayIntoLocalStore:(NSArray*)matches
{
    @synchronized (self) {
      // do stuff...
    };
}
Run Code Online (Sandbox Code Playgroud)

......无论如何,两者之间有什么区别?我应该考虑什么?

objective-c grand-central-dispatch ios

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

如何将两个UIScrollView实例缩放到相同级别?

我有两个UIScrollView实例,我想让它们同时缩放.

有没有经验呢?

我正在使用它NSNotificationCenter告诉我的对象何时缩放.最初我以为我可以以某种方式进入当前可见的矩形,并且只是打电话zoomToRect:,但我没有看到这样做的方法.我现在拥有的是设置zoomScalecontentOffset属性.它看起来像这样:

- (void)registerForZoomNotifications {
[[NSNotificationCenter defaultCenter] addObserver:self 
                                         selector:@selector(receiveZoomNotification:) 
                                             name:ZOOM_NOTIFICATION_IDENTIFIER 
                                           object:nil];
}

- (void)receiveZoomNotification:(NSNotification*)notification {

UIScrollView *currentScrollView = (UIScrollView*)[notification object];

// zoomLevel
[(UIScrollView*)self.view setZoomScale:currentScrollView.zoomScale animated:NO];

// contentOffset
[(UIScrollView*)self.view setContentOffset:currentScrollView.contentOffset animated:NO];
}

#pragma mark -
#pragma mark UIScrollViewDelegate

- (void)scrollViewDidZoom:(UIScrollView *)pageScrollView {

[[NSNotificationCenter defaultCenter] postNotificationName:ZOOM_NOTIFICATION_IDENTIFIER object:pageScrollView];

}
Run Code Online (Sandbox Code Playgroud)

它不起作用,看起来非常不稳定.想法有人吗?我应该采取不同的方法吗?

编辑:我应该澄清两个滚动视图同时不可见.它们在完全相同的时间滚动并不重要,只有滚动视图与滚动完成后的另一个滚动视图处于相同的缩放级别(和可见的矩形).

iphone objective-c uiscrollview

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

Swift中Java的Integer.reverseBytes()等价于什么?

我正在开发一个以Q Number格式读取一些字符串的应用程序。

Java实现将这样的字符串转换为:

int i = Integer.parseInt("00801600", 16);
System.out.println("Number from Integer.parseInt = " + i); // i=8394240
float j = Integer.reverseBytes(i);
System.out.println("After Integer.reverseBytes = " + j); // j=1474560.0
float k = j / 65536; //TWO_POWER_OF_16 = 65536
System.out.println("After Q division = " + k); // k=22.5
Run Code Online (Sandbox Code Playgroud)

我玩过很多swift函数的组合,(希望)这非常接近:

let i: Int = Int("00801600", radix: 16) ?? 0
let istr = "Number from Int = \(i)"
let j: Double = Double(i.byteSwapped)
let jstr = "After byte swapping = \(j)" …
Run Code Online (Sandbox Code Playgroud)

ios swift

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