小编mor*_*tar的帖子

Ubuntu 22 基础 docker 映像上的 apt-get 更新失败

我正在尝试将我们的 docker 基础映像之一升级到 Ubuntu 的最新稳定版本。我已将问题隔离为一个简单的可重现案例。我有一个像这样的 Dockerfile:

FROM ubuntu:22.04

MAINTAINER mep-dev@zulily.com

# Install java and clean-up
RUN apt-get update
Run Code Online (Sandbox Code Playgroud)

当我在本地计算机上构建它时,没有任何问题。然而,当我在 CICD 上构建它时,有时会出现以下错误:

步骤 3/3:运行 apt-get update
---> 在 6ca01b60de64 中运行
Get:1 http://archive.ubuntu.com/ubuntu jammy InRelease [270 kB]
Get:2 http://security.ubuntu.com/ ubuntu jammy-security InRelease [110 kB]
获取:3 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [109 kB]
获取:4 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [ 99.8 kB]
Err:1 http://archive.ubuntu.com/ubuntu jammy InRelease
由于公钥不可用,无法验证以下签名: NO_PUBKEY 871920D1991BC93C
Err:3 http://archive.ubuntu.com/ ubuntu jammy-updates InRelease
无法验证以下签名,因为公钥不可用: NO_PUBKEY 871920D1991BC93C
Err:4 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
无法验证以下签名,因为公钥不可用:NO_PUBKEY 871920D1991BC93C
Err:2 http://security.ubuntu.com/ubuntu …

ubuntu apt-get docker ubuntu-22.04

38
推荐指数
3
解决办法
3万
查看次数

UIScrollView阻止了视图控制器上的touchesBegan,touchesMoved,touchesEnded

我在视图控制器(UIViewController的自定义子类)中处理了几个我的UI组件.它的方法touchesBegan:withEvent:,touchesMoved:withEvent:touchesEnded:withEvent:.它工作正常.然后我添加了一个滚动视图(UIScrollView)作为层次结构中的顶视图.

现在我在视图控制器上的触摸处理程序不起作用.他们没有被召唤.有趣的是,我在滚动视图中有各种其他UI组件可以正常工作.有些是按钮,有些是定义自己的自定义视图touchesBegan:withEvent:等.唯一不起作用的是视图控制器上的触摸处理程序.

我想也许是因为滚动视图拦截为己用的触动,但我UIScrollView的子类,只是看看,如果我能得到它的工作,我回来YES总是touchesShouldBegin:withEvent:inContentView:NO来自始终touchesShouldCancelInContentView:.仍然无法正常工作.

如果它有所作为我的视图控制器在标签栏控制器内,但我不认为它是相关的.

有没有人有这个问题并有一个现成的解决方案?我的猜测是滚动视图猴子响应者链.我可以回来吗?我想如果我无法想出任何其他内容,我会将滚动视图下的顶级视图设为自定义视图,并将消息转发给视图控制器,但看起来很糟糕.

iphone touch uiscrollview viewcontroller nsresponder

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

需要一些帮助来了解Core Data中的瞬态属性

我阅读有关瞬态属性的文档,但我无法真正理解它们的用途.如果我有这样的NSManagedObject的自定义子类,有人可以告诉我有和没有瞬态属性之间的区别吗?

@interface Board : NSManagedObject
{
    NSMutableArray *_grid;
}

// Core Data to-many relationship
@property (nonatomic, retain) NSSet *pieces;

@property (nonatomic, readonly) NSArray *grid;

-(void)awake;

-(void)movePiece:(PieceState *)piece to_x:(int)x y:(int)y;

@end


@implementation Board

@dynamic pieces;

-(void)awakeFromInsert {
    [super awakeFromInsert];
    [self awake];
}

-(void)awakeFromFetch {
    [super awakeFromFetch];
    [self awake];
}

-(void)awake {
    _grid = nil; // probably not necessary
}

-(NSArray *)grid {
    if (!_grid) {
        _grid = [[NSMutableArray alloc] initWithCapacity:10];
        for (int i = 0; i < 10; i++) {
            NSMutableArray …
Run Code Online (Sandbox Code Playgroud)

iphone core-data transient

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

我可以覆盖滚动视图的自动行为以滚动到第一个响应者吗?

我在UIScrollView中有一个UITextField(深层次).我正在观看UIKeyboardDidShowNotification,并在手动更改第一个响应者时调用相同的代码(我可能会更改为不同的文本字段而不会暂时隐藏键盘).在该代码中,我scrollRectToVisible:animated:用来确保UITextField可见.

我有一个非常头疼的调试为什么这很有趣,但我现在意识到UIScrollView会自动确保第一个响应者在其范围内.我正在更改UIScrollView的框架,以便它们都不会隐藏在键盘后面.

但是,我的代码可能比它们的代码更聪明,因为我不仅要显示UITextField,还要显示一些附近的相关视图.如果它们合适,我会尝试展示这些观点; 如果不是,我尽可能多地展示它们,但至少要确保UITextField可见.所以我想保留我的自定义代码.

自动行为会干扰我的代码.我看到的是滚动视图轻轻向上滚动,以便我的内容的底部边缘可见,然后它快照到我的代码告诉它的位置.

反正有没有阻止UIScrollView执行其将第一个响应者滚动到视图中的默认功能?

更多信息

在阅读文档时,我读到他们建议更改滚动视图的contentInset而不是框架.我改变了这一点并消除了一些不可预测的行为,但它没有解决这个特殊问题.

我认为发布所有代码并不一定有用.但这是关键的召唤和当时重要属性的价值.我将为CGRects编写4元组; 我的意思是(x,y,宽度,高度).

[scrollView scrollRectToVisible:(116.2, 71.2, 60, 243) animated:YES];
Run Code Online (Sandbox Code Playgroud)

scrollView.bounds ==(0,12,320,361)

scrollView.contentInset == UIEdgeInsetsMake(0,0,118,0)

textField.frame ==(112.2,222.6,24,24)

转换为scrollView的直接子视图的坐标==(134.2,244.6,24,24)

转换为scrollView的坐标==(134.2,244.6,24,24)

因此,滚动视图底部边缘实际上在y == 243处,因为插入.

请求的矩形扩展到y == 314.2.

文本字段扩展到y == 268.6.

两者都是出界的.scrollRectToVisible试图解决其中一个问题.标准UIScrollView/UITextField行为正在尝试修复另一个.他们没有提出完全相同的解决方案.

iphone uiscrollview first-responder

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