Localizable.strings を更新します。
SwiftGen を使ってコード生成しているので、キーは CamelCase で適当な粒度で .
で区切ってグルーピングします。
画面名.要素
または 画面名.要素.状態
となるようにしてください。
https://github.com/0xfe/vexwarp | |
ステレオ: 対応 | |
アルゴリズム: Phase Vocoder | |
音質: あまりよくない | |
AudioBufferを出力するので使いやすそう。めちゃくちゃ古い | |
https://github.com/olvb/phaze | |
ステレオ: 対応 | |
アルゴリズム: Phase Vocoder | |
音質: あまりよくない |
const WIDTH = 176 | |
const HEIGHT = 144 | |
const progRGB = yuv420ProgPlanarToRgb(base64ToArrayBuffer(yuv420ProgPlanarImage()), WIDTH, HEIGHT) | |
const canvas = document.createElement("canvas") | |
document.body.appendChild(canvas) | |
const ctx = canvas.getContext("2d") | |
const imageData = ctx.createImageData(WIDTH, HEIGHT) | |
putRGBToRGBA(imageData.data, progRGB, WIDTH, HEIGHT) | |
ctx.putImageData(imageData, 0, 0) |
import SwiftUI | |
import UIKit | |
/// UIKit でジェスチャを取得するための透明な View | |
/// | |
/// overlay で利用する | |
/// 参考 https://stackoverflow.com/a/57943387/1567777 | |
struct ClearLongPressGestureView: UIViewRepresentable { | |
let onChanged: (Bool) -> Void |
import SwiftUI | |
extension View { | |
/// By reducing the hit detection, make it so that tap detection occurs within the range of the frame | |
/// | |
/// In SwiftUI, a View within about 10pt radius from the tap position is detected as touch, | |
/// so we place a contentShape that is just as small. | |
func exactHitArea() -> some View { | |
modifier(ExactHitAreaModifier()) | |
} |
import SwiftUI | |
extension View { | |
/** | |
* This is a custom extension to SwiftUI's onTapGesture, designed to avoid the issue where the tappable area extends slightly beyond the view's drawing bounds. | |
* Unlike the original onTapGesture, this version ensures the tap is only recognized within the exact drawing bounds of the View. | |
*/ | |
func onTapGestureExact(_ action: @escaping (CGPoint) -> Void) -> some View { | |
overlay { | |
GeometryReader { proxy in |
import SwiftUI | |
struct ContentView: View { | |
@State private var count = 0 | |
@State private var states: [InfoView.State] = [.init(text: "", text2: "", text3: "")] | |
var body: some View { | |
VStack { | |
RedrawBorder { | |
Button { |
パスコードロックしてない iPad がアクセスガイドのパスコードがわからなくなり解除できなくなった | |
再現するかわからないが、下記の手順でなぜかアクセスガイドが解除できた | |
- ホームボタン+電源ボタン同時押しで強制再起動 | |
- ロック画面出てる状態でホームボタン+電源ボタン同時押しで強制再起動 | |
- ロック画面をスワイプでカメラを起動 | |
- 左下のサムネイルからカメラロールを開く | |
- すべての写真を選択 |
const detachAndFlatten = (pageName) => { | |
const detach = (c) => figma.union([c], c.parent) | |
const page = figma.root.children.find(c => c.name === pageName) | |
const frames = page.children.filter(c => c.type === "FRAME") | |
for (let frame of frames) { | |
for (let c of frame.children) { | |
if (c.type === "INSTANCE") { | |
c = detach(c) | |
} else { |