小编DPM*_*itu的帖子

如何将图像垂直对齐到某些文本第一行的中心?

我有一个要点和一些长的多行文本。我希望项目符号点与第一行文本的中心对齐。显然,如果字符串足够短并且一行长,那么两个视图会自动居中对齐。我对文本长度超过一行的情况感兴趣。

var body: some View {
    HStack {
        Image(systemName: "circle.fill")
            .font(.system(size: 8))
        Text("Insert really long multiline string that wraps.")
    }
}
Run Code Online (Sandbox Code Playgroud)

这可能吗?

更新1:

将 HStack 对齐设置为顶部会将图像的顶部与文本的顶部对齐,如下所示...

var body: some View {
    HStack(alignment: .top) {
        Image(systemName: "circle.fill")
            .font(.system(size: 8))
        Text("This is really really really really really really really really really really really really really really really really really really really really really really really really long string.")
    }
}
Run Code Online (Sandbox Code Playgroud)

图片1

更新2:

我能想到的唯一选择是这样的除了这是 UIKit...

// Aligns the icon to the center …
Run Code Online (Sandbox Code Playgroud)

swiftui

15
推荐指数
3
解决办法
2962
查看次数

我的视图控制器被保留了(我认为),但我找不到强有力的参考

我正在处理内存泄漏,调试器并没有太大帮助。我注意到我的几个视图控制器在被解雇后仍然在内存中。我的假设是有一个强有力的参考,我一直在寻找。

  • 对于我的每个类,我喜欢包含一个deinit记录消息的。这就是我第一次知道对象没有被释放的方式。
  • 当我检查内存图时,我发现被解散但仍在内存中的视图控制器。没有什么看起来像一个保留循环。所有的参考都是weak var. Xcode 没有警告。
  • 当我通过泄漏运行 memgraph 时,它报告了 0 leaks for 0 total leaked bytes.

当我在处理泄漏时,我注意到一个名为traceTree. 我用不应该存在的对象的地址运行它。它报告了以下内容......

2 <CaptureViewController 0x7fee7a008800> [1536]
  2 <WaterfallCollectionViewLayout 0x7fee47c0b450> [368]   +264: delegate 0x7fee47c0b558
    2 <UICollectionView 0x7fee7a060e00> [3072]  +1744: __strong _layout 0x7fee7a0614d0
      1 0x7fee47c10590 [112]    +24:  0x7fee47c105a8 --> offset 2
      + 1 0x7fee7b028000 [16896] +10600:  0x7fee7b02a968
      +   1 Region libobjc.A.dylib __DATA __bss: 'objc::AssociationsManager::_mapStorage' 0x7fff89c160c8
      1 0x7fee67d02c30 [304]   +112:  0x7fee67d02ca0
        1 0x7fee67d02100 [304]     +8:  0x7fee67d02108
          1 0x7fee7900be00 [8704]  +2432:  0x7fee7900c780 …
Run Code Online (Sandbox Code Playgroud)

xcode memory-leaks ios

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

如何将图像剪辑到惰性网格内的正方形?(SwiftUI)

这不是这个问题的重复。

您将在下方看到一个包含 3 列的矩形网格。我正在尝试使用图像实现相同的效果。图像应该被剪裁,否则不会出现拉伸或扭曲。

这是我如何实现矩形网格...

// In my view struct...

private let threeColumnGrid = [
    GridItem(.flexible(minimum: 40)),
    GridItem(.flexible(minimum: 40)),
    GridItem(.flexible(minimum: 40)),
]

// In my body...

LazyVGrid(columns: threeColumnGrid, alignment: .center) {
    ForEach(model.imageNames, id: \.self) { imageName in
        Rectangle()
            .foregroundColor(.red)
            .aspectRatio(1, contentMode: .fit)
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我想要使用矩形的布局...

矩形网格图像

这是我的目标...

照片应用截图

更新:

如果我这样做...

Image(item)
    .resizable()
    .aspectRatio(1, contentMode: .fit)
Run Code Online (Sandbox Code Playgroud)

如果图像的纵横比不是 1:1,则图像会失真。例如,下面屏幕截图中的圆形图像应该是一个完美的圆形。

失败示例 1

ios swiftui

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

如何使用拖放重新排序 UITableView?

我知道拖放可用于在整个应用程序和应用程序之间传输数据。我对此不感兴趣。我想要的只是使用拖放功能来重新排序表视图而不传输数据。我怎么做?

uitableview uikit ios

3
推荐指数
2
解决办法
3915
查看次数

为什么这个递归函数有效?

所以我的一个朋友正在参加他的第一个CS课程,并提到他在他的第一个课程中使用递归.他发给我下面的代码.马上,我注意到他没有抓住他的递归调用的返回值,我认为它不起作用.但是他坚持认为它确实有效,所以我尝试了他的程序,令我惊讶的是它的功能完全符合预期.忽略这一事实,这是从A点到B点的愚蠢方式,为什么这甚至有效?

我正在玩他发给我的东西,并cout在if语句之后添加了一个.除此之外,第一个代码块和第二个块是相同的.

如果我为第一个程序输入以下内容,这就是我得到的......

输入一个数字:10

你输了:10这是对的吗?(是/否):N

输入一个数字:12

您输入了:12这是正确的吗?(是/否):Y

main()= 12

如果我对第二个程序做同样的事情,这就是我得到的......

输入一个数字:10

你输了:10这是对的吗?(是/否):N

输入一个数字:12

您输入了:12这是正确的吗?(是/否):Y

main()= 6300096

这是怎么回事!?

#include <iostream>
#include <cstring>
#include <cctype>

using namespace std;

int getNum() 
{
    cout << "Enter a Number: ";
    int x;
    cin >> x;
    cin.ignore(100, '\n');

    while(x < 0) {
        cout << "Please enter amount greater than 0: ";
        cin >> x;
        cin.ignore(100, '\n');
    }

    cout << "You entered: " << x << " Is this correct? (Y/N): ";
    char response;
    cin …
Run Code Online (Sandbox Code Playgroud)

c++

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

从集合视图拖动适用于 iPad,但不适用于 iPhone。怎么来的?

我一直在 iOS 11 中实现新的拖放功能,专门用于集合视图。现在一切都在 iPad 上运行,但在 iPhone 上不起作用。我知道你只能在 iPhone 上的同一个应用程序中拖放;这就是我想要做的。

由于某种原因,collectionView(_:itemsForBeginning:at:)当我尝试执行拖动时不会调用。在 iPad 上运行良好。想法?

iphone ios

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

标签 统计

ios ×4

swiftui ×2

c++ ×1

iphone ×1

memory-leaks ×1

uikit ×1

uitableview ×1

xcode ×1