小编Mar*_*sta的帖子

造型垫选择角度材料

如何设置mat-select的面板组件的样式.从我得到的文档,我需要提供panelClass所以我这样做:

<mat-form-field>
  <mat-select placeholder="Search for"
    [(ngModel)]="searchClassVal"
    panelClass="my-select-panel-class"
    (change)="onSearchClassSelect($event)">
    <mat-option *ngFor="let class of searchClasses" [value]="class.value">{{class.name}}</mat-option>
  </mat-select>
</mat-form-field>
Run Code Online (Sandbox Code Playgroud)

我在开发人员工具中检查过这个类是否附加到DOM中的面板并附加了它.所以我将自定义scss类附加到此元素.现在,当我提供CSS时,它只是不起作用.我的scss例如如下所示:

.my-select-panel-class {
    width:20px;
    max-width:20px;
    background-color: red;
    font-size: 10px;
}
Run Code Online (Sandbox Code Playgroud)

面板的宽度始终等于widthselect元素的宽度.有时在选项中你有太长的字符串,我想让它更广泛.有什么方法可以做到这一点.我的组件中的风格甚至background-color无法正常工作.有人知道为什么这么奇怪吗?

我正在使用:Angular 4.4.5 @ angular/material:2.0.0-beta.12

css typescript angular-material angular

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

在OS X上安装Cocoapods El Capitan错误

首先.由于iOS 9.3,我更新了El Capitan,它只支持xCode 7.3.

更新后,我发现该pod命令无法正常工作.我执行了:

sudo gem install cocoapods
ERROR:  Error installing cocoapods:
    activesupport requires Ruby version >= 2.2.2.
Run Code Online (Sandbox Code Playgroud)

所以我的问题是我无法安装cocoapods.我对宝石和红宝石的东西一无所知.有人知道如何处理这个问题吗?

我有El Capitan 10.11.4的第二个OS X,一切都很好,所以我不知道这个问题来自哪里.

更新:2016年4月5日

我在终端上执行了几个命令以获取更多信息:

Kapucha:~ kapucha$ which ruby
/usr/bin/ruby
Kapucha:~ kapucha$ which gem
/usr/bin/gem
Kapucha:~ kapucha$ which brew
/usr/local/bin/brew
Kapucha:~ kapucha$ which rvm
/Users/kapucha/.rvm/bin/rvm
Run Code Online (Sandbox Code Playgroud)

版本:

Kapucha:~ kapucha$ ruby --version
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin15]
Kapucha:~ kapucha$ gem --version
2.2.2
Kapucha:~ kapucha$ brew --version
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:245:in `mkdir': Permission denied - /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15 (Errno::EACCES)
Kapucha:~ kapucha$ rvm --version
rvm …
Run Code Online (Sandbox Code Playgroud)

rubygems ios cocoapods osx-elcapitan

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

MKPolyline奇怪的渲染与缩放MapKit有关

我有非常简单的View Controller来演示MKPolyline的这种奇怪的渲染行为.没有什么特别的,只是普通的api电话.

import UIKit
import MapKit

class ViewController: UIViewController, MKMapViewDelegate {

    @IBOutlet weak var map: MKMapView!

    override func viewDidLoad() {
        super.viewDidLoad()
        map.delegate = self
    }

    override func viewDidAppear(_ animated: Bool) {
        super.viewDidAppear(animated)
        let p1 = CLLocationCoordinate2D(latitude: 51, longitude: 13)
        var coords = [
            p1,
            CLLocationCoordinate2D(latitude: 51.1, longitude: 13),
            CLLocationCoordinate2D(latitude: 51.2, longitude: 13),
            CLLocationCoordinate2D(latitude: 51.3, longitude: 13)
        ]

        let polyline = MKPolyline(coordinates: &coords, count: coords.count)
        map.addOverlays([polyline], level: .aboveRoads)
        let cam = MKMapCamera(lookingAtCenter: p1, fromDistance: 1000, pitch: 45, heading: 0)
        map.setCamera(cam, animated: …
Run Code Online (Sandbox Code Playgroud)

mapkit ios mkoverlay mkpolyline swift

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

在指定的距离限制和顺序中找到沿线串的最近点

我有这样的问题,我会很高兴,如果有人可以帮助我.我有GIST索引的积分表.这些要点不会及时改变.

我想获取一些给定线串附近的点.示例:想象一下,线串是道路,道路上的点是poi.我想去距离特定道路5公里的poi.我想以正确的顺序取得那些poi(沿路的驾驶秩序).看图像:

图片

对于从1点到5点的给定道路,我想从道路上获取距离最远5公里的POI,并且从道路的1点到5点依次获取POI.所以结果应该是:

POI_ID
1
5
6
8
9
10
12
13
Run Code Online (Sandbox Code Playgroud)

这应该告诉我在沿着这条路旅行时我能以最低成本访问的POI.

有没有人有一些想法如何用postgres和postgis做到这一点?

postgresql postgis

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

来自外部框架的自定义视图在Interface Builder中不起作用

我在这个网站上寻找一些解决方案,我发现这个答案并没有解决我的问题.

如何在Interface Builder中使用来自外部框架(扩展名为.framework的文件)的自定义UIView,而不使用CocoaPods,也不将此项目添加为项目的目标.

假设我有一个单独的项目:Cocoa Touch Framework项目模板,我想在我的其他项目中使用它.我将它添加到嵌入式二进制文件链接框架和库中,我可以在Objective-C中使用它:

@import MyFramework;
Run Code Online (Sandbox Code Playgroud)

在斯威夫特:

import MyFramework
Run Code Online (Sandbox Code Playgroud)

但是从未知的原因,Interface Builder没有看到使用@IBDesignable的自定义视图有趣的想法是当我的项目运行时,外部框架的自定义视图正在显示.唯一的问题是在Interface Builder的设计过程中不显示任何内容.

我没有使用CocoaPods,我不想将我的框架项目作为Target嵌入,因为这是许多项目的通用框架.如何将此外部项目/框架附加到我的项目中,以便Interface Builder可以正常工作.当我使用Cocoa Touch Framework项目模板创建目标,以便此框架在我的项目"内部"时,Interface Builder在设计时和运行时期间按预期工作.

有什么方法可以将我的外部项目作为目标附加到其他项目?

xcode interface-builder ios-frameworks ibdesignable xcode7

7
推荐指数
0
解决办法
598
查看次数

iOS 更新录音开始后的录音时间的正确方法

如何使用 AVFoundation 中的捕获管道在录制过程中更新时间标签:

Mic -> AVCaptureDeviceInput -> AVCaptureSession -> AVCaptureAudioDataOutput
Run Code Online (Sandbox Code Playgroud)

AVCaptureAudioDataOutput 有 Delegate 和 AVAssetWritter 将sampleBuffers写入输出文件。在此解决方案中,我想更新录制时间。我可以记录用户点击“记录/暂停/恢复/停止”按钮时的时间,但是 Apple 是否有任何官方方法如何在开始时以 00:00:00 时间更新某些 UILabel。我知道我可以使用 NSTimer 但当我使用 AVAudioRecorder 时我有属性:

var currentTime: TimeInterval
// The time, in seconds, since the beginning of the recording.
Run Code Online (Sandbox Code Playgroud)

上述属性也适用于暂停/继续按钮。

现在,在这个新管道中,我没有这个属性,我想知道我是否丢失了某些东西并且无法在任何地方找到它。我还注意到 AVCaptureSession 有名为 masterClock 的 CMClock 属性,但自记录开始以来我不确定如何使用它来计算时间。

我不明白时钟和方法的全部概念,例如:

CMClockGetHostTimeClock()
CMSyncConvertTime
Run Code Online (Sandbox Code Playgroud)

如何在基于sampleBuffer的AVCaptureAudioDataOutputSampleBufferDelegate方法中获取自录音开始以来的秒数?

更新

我发现了一个名为 CMTimebase 的类,我认为这正是我正在寻找的。目前我不知道如何使用它,但我在操场上进行了一些实验后发现了这一点。

import CoreMedia

let masterClock = CMClockGetHostTimeClock() // This masterclock should be from captureSession
var timebase: CMTimebase? = nil
CMTimebaseCreateWithMasterClock(kCFAllocatorDefault, masterClock, &timebase)

print(CMTimeGetSeconds(CMTimebaseGetTime(timebase!)))

CMTimebaseSetRate(timebase!, 1.0) // …
Run Code Online (Sandbox Code Playgroud)

iphone avfoundation ios avcapturesession avassetwriter

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

使用 QuickTime 从 iPhone 捕获屏幕会禁用设备上的声音

通过照明电缆将 iPhone 设备连接到 Macbook Pro 并在 QuickTime Player 中从此 iPhone 启用“电影录制”后,我无法在 iPhone 设备上播放任何声音。

我的目标不是录制仅在屏幕上显示 iPhone 上正在发生的事情的电影,而是在设备上播放声音。启用从 iPhone 到 MacBook 屏幕的屏幕捕获会话后,我听不到 iPhone 的任何声音。

在以下情况下我只能听到音频: - 我将耳机连接到 iPhone,然后我可以在耳机中听到声音。- 在 QuickTime 中禁用捕获屏幕会话后声音又回来了,但这不是我想要的,因为现在我在 MacBook 屏幕上看不到 iPhone 屏幕。

难道我做错了什么?

我的 MacBook OSX:10.11.6,iOS:10.0.2

iphone macos quicktime screen-capture ios

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

iOS 共享扩展流程

我在创建共享扩展(如 Pinterest 应用程序的共享扩展)时遇到问题。当用户没有登录到包含应用程序的份额扩展只呈现一个选项,以警示log incancel

在代码中的哪个位置决定在我的共享扩展中显示哪个视图控制器。我看到这就像我需要检查共享容器的授权状态,如果这个状态是not logged我需要呈现警报控制器。如果状态是logged我需要显示我的主视图控制器ShareViewController,它是SLComposeServiceViewController

我的问题与 UI 无关,而是将此检查代码放在哪里。我没有找到任何应​​用程序扩展启动的方法,因此我可以根据某些状态为扩展选择一些初始视图控制器。

在 Pinterest 扩展中,当用户从其包含的应用程序注销时,我看不到他们的主视图控制器。我只看到带有选项的警报。

第二个问题:如何以编程方式从共享扩展程序切换到包含应用程序。当用户需要进行身份验证时,这个 Pinterest 共享扩展是如何做到这一点的?

我正在开发最新的 iOS SDK 10.2

ios ios-extensions share-extension swift3

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

物料设计选择列表键盘操作

我对角度和材料设计中的辅助功能技术完全陌生。在我的项目中,我希望有一个选择列表,可以选择一项。该选择列表应该是可聚焦的,但是当聚焦时,它应该能够使用键盘上/下箭头在项目上导航。我知道该网站上有一个示例,他们展示了它与中的mat-list-option项目的行为mat-selection-list。但是此解决方案引入了复选框,因此我需要不带复选框的菜单项的解决方案。只需使用键盘选择一个元素并关闭MatDialog

主要问题是用键盘,因为当我尝试使用mat-listmat-list-item项目或mat-nav-listmat-list-item项目的键盘箭头不工作。

与键盘mat-selection-list配合使用的唯一组件是mat-list-option项目,但这在右侧引入了复选框,而这并不是我想要的。

我正在尝试设计真正的用户友好界面,但由于这个原因我不能。也许问题是如何在这些项目上启用键盘?有什么帮助吗?

accessibility wai-aria angular-material angular

5
推荐指数
0
解决办法
437
查看次数

找出 npm 重复数据删除无限挂起的原因

我正在尝试扁平化我的依赖树。当我使用命令时

npm dedupe
Run Code Online (Sandbox Code Playgroud)

它只是挂着吃处理器,甚至在半小时后它也没有响应......

当我执行npm -ddd dedupe以查看发生了什么时(-ddd将 loglevel 设置为最冗长的愚蠢级别)

我看到它在构建理想树后挂起:

npm sill idealTree ??? yargs-parser@5.0.0-security.0
npm sill idealTree ? ??? camelcase@3.0.0
npm sill idealTree ??? yargs@7.1.1
npm sill idealTree ? ??? camelcase@3.0.0
npm sill idealTree ??? yup@0.31.0
npm sill dedupe generateActionsToTake
Run Code Online (Sandbox Code Playgroud)

它挂在npm sill dedupe generateActionsToTake

这可能是什么原因?npm doctor说这个:

Check                               Value                        Recommendation
npm ping                            ok
npm -v                              v6.14.9
node -v                             v14.15.1
npm config get registry             https://registry.npmjs.org/
which git                           /usr/bin/git
Perms check on cached files …
Run Code Online (Sandbox Code Playgroud)

npm

5
推荐指数
0
解决办法
129
查看次数