小编mem*_*cal的帖子

如何将UIScrollView的触摸事件发送到它后面的视图?

我在另一个视图的顶部有一个透明的UIScrollView.

滚动视图包含内容 - 文本和图像,用于显示信息.

它背后的视图有一些用户应该能够点击的图像.使用上面提到的scrollview可以滚动它们上面的内容.

我希望能够正常使用滚动视图(尽管没有缩放),但是当滚动视图实际上没有滚动时,让点击事件通过它后面的视图.

使用触摸和滚动事件的组合,我可以确定何时让水龙头通过.但它背后的观点仍然没有收到它们.

我尝试过为所有触摸事件使用这样的东西:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{
    NSLog(@"touchesBegan %@", (_isScrolling ? @"YES" : @"NO"));

    if(!_isScrolling) 
    {
        NSLog(@"sending");
        [self.viewBehind touchesBegan:touches withEvent:event];
    }
}
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

在我的情况下,鉴于我的用例,我无法真正应用hitTest和pointInside解决方案.

objective-c uiscrollview uikit ios

15
推荐指数
2
解决办法
5874
查看次数

android浏览器中错误的边框宽度

在具有高密度屏幕的 android设备(devicePixelRatio为1.5),html元素的边框具有错误的边框宽度.

这里有两个框:jsbin示例,在桌面上正确显示

但是在Android上 - 无论是在chrome还是在堆栈浏览器中 - 它们都是这样的:

在此输入图像描述

现在我明白为什么他们看起来像这样,但我找不到任何CSS解决方案 - 只有js.

js解决方案是将元素的宽度和高度更改为奇数以及顶部/左侧属性.

html css google-chrome android-webview android-browser

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

如何检查视图控制器是否属于 UIHostingController 类型

我有一个 UIHostingController,它托管一个名为 CatalogView 的 SwiftUI 视图。显示它时,会附加一个环境对象,因此基本上从 UIKit 来看,它显示如下:

let rootCatalogView = CatalogView()

let appState = AppState.get()
let catalogView = UIHostingController(rootView: rootCatalogView.environmentObject(appState))

navigationController.pushViewController(catalogView, animated: true)
Run Code Online (Sandbox Code Playgroud)

现在稍后我需要检查这个 UIHostingController 是否在 navigationController.viewControllers 列表中

type(of:) 显示以下内容,这是有意义的:

UIHostingController<ModifiedContent<CatalogView, _EnvironmentKeyWritingModifier<Optional<AppState>>>>
Run Code Online (Sandbox Code Playgroud)

诸如 vc.self is UIHostingController.Type 或 vc.self is UIHostingController< CatalogView >.Type 之类的东西都返回 false (vc 是 navigationController.viewControllers 的元素

以下显然有效,它返回 true,但是 UIHostingController 初始化中的任何更改都会更改其类型

vc.isKind(of: UIHostingController<ModifiedContent<CatalogView, _EnvironmentKeyWritingModifier<Optional<StoreManager>>>>.self)
Run Code Online (Sandbox Code Playgroud)

我如何检查视图控制器是否属于 UIHostingController 类型?或者至少我如何将控制器投射到 UIHostingController 以便我可以检查其根视图?

generics ios swift swiftui uihostingcontroller

10
推荐指数
2
解决办法
4768
查看次数

Firefox打印额外的空白页面

我有一个可以在Chrome,Safari和IE上正确打印的网页,但在Firefox上有以下问题:

它只打印第一页上的标题.其余部分是空白的.实际内容仅在第2页显示.

谷歌搜索了一下,我发现"浮动:左"风格正在造成它.如果我删除"浮动:左"它打印好,但它看起来不应该,因为它需要在打印和屏幕上显示彼此相邻的2列.

有这个问题的解决方案吗?

谢谢.

css printing firefox

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

在多个设备上测试iPhone应用程序

我开发了一款iPhone应用程序.我在我的设备上测试它没有问题.

现在我想在更多的设备,QA团队和演示中使用它.

该应用程序还没有在appstore中,我们还没有转向企业开发人员计划.

我们怎么能这样做?

iphone testing ios

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

如何将表单滚动到 SwiftUI 中的特定 UI 元素

我在 SwiftUI NavigationView 上有一个表单。该表单没有特殊元素,只有标准元素:TextField、DatePicker 和一些按钮

我想以编程方式滚动到特定元素。我怎样才能实现这个目标?

ScrollViewReader 似乎不适用于表单。

ScrollViewReader { p in
  Form {
    ....
    Button(action: {
      p.scrollTo(150)
    }) {
      Text(self.label)
    }
}
Run Code Online (Sandbox Code Playgroud)

ios swift swiftui swiftui-form

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