小编Anu*_*yal的帖子

了解GlobalActor,是否保证它不会在主线程上执行

我正在学习 的用法,async-await并同时阅读有关Global Actors. 我知道的MainActorGlobalActor,如果我们用注释一个方法@mainActor,该方法将在主线程上执行。类似于如果我们创建一个自定义的 GlobalActor,我们是否知道它将使用哪个线程来执行。

@globalActor actor CustomGlobalActor {
     static let shared = CustomGlobalActor()
 }

@CustomGlobalActor func performTask() async -> Output {
    .....
}
Run Code Online (Sandbox Code Playgroud)

另外,补充问题:

  1. 我们可以互换使用它来在后台线程中执行耗时的任务吗?
  2. 它是否以任何方式连接到全局队列?

actor ios async-await swift

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

如何将两个SQLite SELECT语句与两个条件组合在一起

在这里,我想从同一个表中选择两个不同难度的问题.我正在使用查询:

readAllQuestions = [NSString stringWithFormat: @"SELECT * FROM tbl_questions WHERE difficulty IN(1,3) AND approved = 1"];
Run Code Online (Sandbox Code Playgroud)

它的工作.现在我想将问题限制在100个,其中包括50个困难问题1和其他50个困难问题3. LIMIT仅使用前100个问题.

不使用两个不同的查询怎么做?请帮忙..

sqlite select objective-c limit ios

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

将GPUImage过滤器应用于UIView

我有一个问题.我需要应用一个类似于Pixelate or Blur整个过滤器UIView.喜欢的eBay iPad应用程序.

我想用,GPUImage但我不知道怎么做.有一种方法可以GPUImageView直接应用过滤器而不通过a UIImage

主要问题是UIViewiPad3日制作大型屏幕截图是昂贵的(UIWindow抓取时间为2秒).因此,完美的解决方案是直接将过滤器应用于视图,就像eBay应用程序一样,但是......如何?

谢谢大家!

filter effect ios gpuimage

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

在滚动时复制UITableViewCell contentView的子视图(UIButton和UIImageView)

在我的tableView中,在一些单元格中,我添加了一个imageView作为单元格contentView的子视图.在滚动表上查看上下这些图像也复制在其他单元格上.但这个问题并不总是发生.请提出解决方案..我正在使用以下代码.

static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

if (cell == nil) 
{
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    [cell setSelectionStyle:UITableViewCellSelectionStyleNone];

    if (friendsArray.count != 0)
    {
        NSString *str = [friendsIdArray objectAtIndex:indexPath.row];
        if ([pendingRequests containsObject:str])
        {
            // Add image for pending item
            UIImageView *pendImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"pendng.png"]];
            pendImage.frame = CGRectMake(220.0, 2.5, 70, 40);
            pendImage.tag = indexPath.row;   
            [cell.contentView addSubview:pendImage];
        }
    }

}

NSString *object;

if (friendsArray.count == 0)
{
    if ([cell.contentView viewWithTag:indexPath.row]) 
    {
        for (UIView *subview in …
Run Code Online (Sandbox Code Playgroud)

xcode objective-c uitableview

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

iOS将ViewController和AppDelegate设置为CoreLocation模型类的侦听器

如何设置AppDelegateViewController成为模型重定位类的监听器?什么是正确的设计选择?

我有兴趣有一个模型类来实现CoreLocation和位置更新.我猜这个课应该是一个sharedSingleton,因为我AppDelegate和他都ViewController希望访问它.

当我viewController打电话给它时,我想要CLLocationManager使用它startUpdatingLocation.

当应用程序进入后台时,我想使用startMonitoringSignificantLocationChanges监视AppDelegate中的位置更新.

我的问题是,如何设置模型类来处理这些不同类型的位置更新,以及通知ViewController或AppDelegate找到新的位置?用NSNotification?授权似乎不起作用,因为它是一对一的关系.

感谢您在确定如何设计时的帮助.

谢谢!

iphone objective-c core-location nsnotificationcenter ios

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

如何为多个UITextField使用一个UIDatePicker?

在我的viewDidLoad我有以下代码:

UIDatePicker* datePicker = [[UIDatePicker alloc] init];
datePicker.datePickerMode = UIDatePickerModeDate;
[datePicker addTarget:self action:@selector(datePickerChanged:) forControlEvents:UIControlEventValueChanged];
dateField1.inputView = datePicker;
dateField2.inputView = datePicker;
dateField3.inputView = datePicker;
dateField4.inputView = datePicker;
Run Code Online (Sandbox Code Playgroud)

(dateField都是UITextFields)

在我的-(void)datePickerChanged:(UIDatePicker*)datePicker 方法中,我如何知道正在编辑哪个dateField,以便我可以填写选择的日期?

目前我正在为每个UITextField使用一个新的UIDatePicker,但我希望这种情况有一个更优雅的解决方案.

任何帮助表示赞赏!

objective-c uidatepicker uitextfield inputview

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

在UITableViewController上设置背景

我有许多单元格的TableViewController.和我的TableView默认白色的背景.我想成为一些背景图片.我看到这段代码:

self.tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"BackgroundPattern.png"]];
Run Code Online (Sandbox Code Playgroud)

但是我不能在swift上使用它.因此,请帮助我将此代码回收到快速代码或解决此问题

ios swift

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

从不同核心数据实体获取数据并将结果转换为相应类的通用方法

我正在写一个通用的方法与给定的从核心数据实体获取数据entityNamepredicatesortDescriptors。我想将结果作为请求实体的数组返回。如果我给Student作为entityName,则需要返回如下所示的学生数组,

do {
        if let results = try CoreDataController.sharedInstance.masterManagedObjectContext.fetch(request) as? [Student] {

            if results.count > 0 {

                return results
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

这里的问题是,在使用给定实体名称的通用方法中,如何将结果转换为相应实体类的数组?

我试图从实体名称生成类,

let coreDataClass = NSClassFromString(entityName) as! NSManagedObject.Type
Run Code Online (Sandbox Code Playgroud)

但这不在数组声明中(在以上代码中的Student中)。请帮助我找到正确的方法。

提前致谢!

casting core-data nsmanagedobject ios swift

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

libsqlite和dispatch_async

如果libsqlite不是线程安全的,则类似这样的代码

dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);

__block NSArray *__albumsCollection = albumCollections;

dispatch_apply(count, queue, ^(size_t i) 
{ 
   MPMediaItem *albumObj = [[__albumsCollection objectAtIndex:i] representativeItem];

   ///// making some sqlite queries    
});
Run Code Online (Sandbox Code Playgroud)

会引发一个BAD_EXEC。

那么如何使此代码线程安全?

我的解决方案是使用主队列

dispatch_apply(count, dispatch_get_main_queue(), ^(size_t i) 
{
   /// my sqllite queries
});
Run Code Online (Sandbox Code Playgroud)

但我对此不满意。如何使它更好?

sqlite objective-c thread-safety grand-central-dispatch

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