我在swift中制作一个iOS应用程序,我正在尝试以编程方式创建一个collectionView.我想使用我自己的UICollectionReusableView子类作为collectionview的标题,因为我需要一些按钮和标题中的可伸缩图像.
SupView是UICollectionReusableView.
override func viewDidLoad() {
super.viewDidLoad()
let layout = UICollectionViewFlowLayout()
layout.headerReferenceSize = CGSizeMake(self.view.frame.width, 200)
someView = SupView(frame: CGRectMake(0, 0, view.frame.width, 200))
collectionView = UICollectionView(frame: self.view.frame, collectionViewLayout: layout)
collectionView.delegate = self
collectionView.dataSource = self
collectionView.registerClass(UICollectionViewCell.self, forCellWithReuseIdentifier: "Cell")
collectionView.registerClass(UICollectionReusableView.self, forSupplementaryViewOfKind: UICollectionElementKindSectionHeader, withReuseIdentifier: "headerCell") // UICollectionReusableView
self.view.addSubview(collectionView)
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试插入补充视图viewForSupplementaryElementOfKind,就像这样但我在尝试创建标题时遇到错误:
func collectionView(collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, atIndexPath indexPath: NSIndexPath) -> UICollectionReusableView {
var reusableView : UICollectionReusableView? = nil
// Create header
if (kind == UICollectionElementKindSectionHeader) {
// Create Header
let headerView …Run Code Online (Sandbox Code Playgroud) 我正在使用Xcode 6在swift中构建一个iOS应用程序.我正在尝试在滚动视图中嵌入一个带有表视图的视图控制器.当用户拖动表视图时,假设移动表,而不是它所嵌入的滚动视图.我已经做了这个插图,以清除我的视图并查看控制器层次结构:

红色区域是滚动视图的内容大小区域.
绿色和蓝色区域是嵌入在滚动视图中的不同视图控制器.
黄色区域是蓝色视图控制器中的文本字段.
橙色区域是蓝色视图控制器中的表格视图.
我已经在scrollview中启用了分页,因此它可以捕捉到绿色或蓝色视图控制器.如何将表格视图弹出到视图层次结构的顶部,以便滚动滚动视图的唯一方法是在文本字段中拖动.
import UIKit
class RootViewController: UIViewController, UIScrollViewDelegate {
var scrollView: UIScrollView!
var greenViewController: GreenViewController!
var blueViewController: BlueViewController!
override func viewDidLoad() {
super.viewDidLoad()
scrollView = UIScrollView(frame: CGRectMake(0, 0, self.view.frame.width, self.view.frame.height))
scrollView.delegate = self
scrollView.pagingEnabled = true
self.greenViewController = self.storyboard?.instantiateViewControllerWithIdentifier("Green View Controller") as! GreenViewController
self.blueViewController = self.storyboard?.instantiateViewControllerWithIdentifier("Blue View Controller") as! BlueViewController
greenViewController.view.frame = CGRectMake(0, 0, view.bounds.width, view.bounds.height)
blueViewController = CGRectMake(0, view.bounds.height, view.bounds.width, view.bounds.height)
scrollView.addSubview(greenViewController.view)
scrollView.addSubview(blueViewController.view)
scrollView.contentSize = CGSizeMake(view.bounds.width, …Run Code Online (Sandbox Code Playgroud) 我正在为iPhone制作iOS应用程序,而我正在使用导航控制器.在导航过程中的某个时刻,我正在向UISegmentedControl导航控制器的导航栏下添加一个视图控制器.我在导航栏中插入新的背景和阴影图像,使其UISegmentedControl显示为导航栏的一部分.我是这样做的:
// nav bar color image
let rect = CGRectMake(0, 0, view.frame.width, 0.5) // Used in navBar, size dosn't matter
UIGraphicsBeginImageContextWithOptions(rect.size, true, 0)
barBackgroundColor.setFill()
UIRectFill(rect)
let navBarBackground = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
// setup navbar
navigationController!.navigationBar.setBackgroundImage(navBarBackground, forBarMetrics: .Default)
navigationController!.navigationBar.shadowImage = UIImage()
navigationController!.navigationBar.tintColor = UIColor.blackColor()
navigationController!.navigationBar.translucent = false
Run Code Online (Sandbox Code Playgroud)
当我离开给定的视图控制器时,导航栏背景仍然会改变.
如何恢复导航栏的外观?
要么...
是否有另一种方法嵌入UISegmentedControl扩展的导航栏?
编辑:
在更改背景图像之前的视图控制器中,我尝试保护标准图像:
override func viewDidAppear(animated: Bool) {
if sharedVariables.standartNavBarBackgroundImage == nil {
let herp = navigationController!.navigationBar.backgroundImageForBarMetrics(.Default)
sharedVariables.standartNavBarBackgroundImage = herp
let derp = navigationController!.navigationBar.shadowImage …Run Code Online (Sandbox Code Playgroud) 我正在尝试在旧版本的 iOS (11.0) 上测试我的应用程序。
完成此操作后,我希望 iOS 11.0 在图像 2 的“操作系统版本”下拉列表中可见,但事实并非如此。它看起来与图像 2 完全一样。当关闭 Xcode 并重新启动我的 Mac 并返回运行时时列表中,它看起来仍然与图 3 上的完全相同。运行时已下载,但我无法将其创建为模拟器。
当运行时没有出现在“创建模拟器”对话框中时,如何在下载运行时后创建新的模拟器?
我想以UITextView编程方式设置我的高度以相应地适应内容.我已将UITextView默认高度设置为遵循我设置的布局约束,但希望在用户触摸按钮时更改它.
@IBOutlet weak var descriptionHeight: NSLayoutConstraint!
我试图使用layoutIfNeeded(),但它不会改变我的文本视图的大小(因为大小由布局约束保留).
我试图暂时禁用这样的约束:
print("before: \(descriptionTextView.frame)")
descriptionHeight.active = false
descriptionTextView.layoutIfNeeded()
print("after: \(descriptionTextView.frame)")
descriptionHeight.constant = descriptionTextView.frame.height
descriptionHeight.active = true
Run Code Online (Sandbox Code Playgroud)
但是当停用它后访问插座时,它会引发异常:
致命错误:在展开Optional值时意外发现nil
它似乎正在正确计算大小:
之前:(8.0,8.0,398.0,100.0)
之后:(8.0,8.0,398.0,954.666666666667)
为什么会这样?有没有更好的方法来计算和设置我的适当大小UITextView?
我正在尝试在我的项目中设置UI测试.我正在进行UI测试,试图通过我的应用程序登录提示登录.为了确保在测试启动时显示登录提示,我正在尝试运行ServerManager.logout(),这是在项目的代码库中.这将导致在启动时显示登录提示.
import XCTest
class SmokeTest: XCTestCase {
override func setUp() {
super.setUp()
// Put setup code here. This method is called before the invocation of each test method in the class.
// In UI tests it is usually best to stop immediately when a failure occurs.
continueAfterFailure = false
// UI tests must launch the application that they test. Doing this in setup will make sure it happens for each test method.
XCUIApplication().launch()
// In UI tests it’s …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用USB音频类1实现PIC32 MCU作为音频设备.我已经实现了这个项目:PIC32 USB数字音频附件板Demos.zip 它工作正常,但现在我想切掉一些音频控制接口,所以我有一个更简单的音频功能:

该设备似乎根据电路板上的状态LED正确枚举,它出现在设备管理器的音频设备列表中,但它有一个小的黄色感叹号..当我插入设备时,窗口告诉我:"设备驱动程序软件未成功安装"
有人有线索吗?
USB描述符,代码块:
ROM BYTE configDescriptor1[] ={
//CD
0x09, // Size : 9 Bytes
0x02, // Configuration Descriptor (0x02)
//0xE4, // Total length in bytes of data returned Includes the combined length of all descriptors (configuration, interface, endpoint, and class- or vendor-specific) returned for this configuration.
0xB4, // Ved simpel Audio Function
0x00, // 2. Byte af Total Length // 228
0x03, // Number of Interfaces: 3
0x01, // bConfigurationValue, Value to use as an …Run Code Online (Sandbox Code Playgroud) 我想模糊我的iOS应用程序的整个屏幕,我无法使用,UIBlurEffect因为我希望能够控制模糊.所以我正在尝试使用CIGaussianBlur,但我遇到了屏幕边缘的问题.
我正在截取屏幕截图,然后通过一个CIFilterwith 运行它CIGaussianBlur,将CIImage背面转换为UIImage,并在屏幕顶部添加新的模糊图像.
这是我的代码:
let layer = UIApplication.sharedApplication().keyWindow?.layer
UIGraphicsBeginImageContext(view.frame.size)
layer!.renderInContext(UIGraphicsGetCurrentContext()!)
let screenshot = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
let blurRadius = 5
var ciimage: CIImage = CIImage(image: screenshot)!
var filter: CIFilter = CIFilter(name:"CIGaussianBlur")!
filter.setDefaults()
filter.setValue(ciimage, forKey: kCIInputImageKey)
filter.setValue(blurRadius, forKey: kCIInputRadiusKey)
let ciContext = CIContext(options: nil)
let result = filter.valueForKey(kCIOutputImageKey) as! CIImage!
let cgImage = ciContext.createCGImage(result, fromRect: view.frame)
let finalImage = UIImage(CGImage: cgImage)
let blurImageView = UIImageView(frame: view.frame)
blurImageView.image = finalImage
blurImageView.sizeToFit() …Run Code Online (Sandbox Code Playgroud) 我正在构建一个简单的osx应用程序,它将从我的instagram用户获取我的关注者计数和其他公共可用统计数据,并保持统计数据.我知道有一种方法可以通过API获取用户数据,如下所示:
https://api.instagram.com/v1/users/self/?access_token=ACCESS-TOKEN
Run Code Online (Sandbox Code Playgroud)
但我想避免获取访问令牌的麻烦......
我知道有很多方法可以获取其他公共信息,例如获取用户最近的媒体:
https://www.instagram.com/USERNAME/media/
Run Code Online (Sandbox Code Playgroud)
有没有人知道获取用户公开个人资料信息的类似方法,如下所示 - 关注者数量和帖子数量?
我正在玩自定义和交互式视图控制器转换UIPercentDrivenInteractiveTransition.我正在构建一个以模态方式呈现卡片(其他视图控制器)的应用程序.我已经进行了自定义转换,UIViewControllerAnimatedTransitioning这使得卡片视图控制器的动画效果与标准模型演示风格非常相似.
func animateTransition(using transitionContext: UIViewControllerContextTransitioning) {
{...}
let fullScreenFrame = transitionContext.finalFrame(for: cardVC)
let offsetFrame = cardVC.view.frame.offsetBy(dx: 0, dy: cardVC.view.frame.height)
let finalFrame = presenting ? fullScreenFrame : offsetFrame
cardVC.view.frame = presenting ? offsetFrame : fullScreenFrame
containerView.addSubview(cardVC.view)
UIView.animateKeyframes(
withDuration: transitionDuration(using: transitionContext),
delay: 0,
options: UIViewKeyframeAnimationOptions.calculationModeLinear,
animations: {
UIView.addKeyframe(
withRelativeStartTime: 0,
relativeDuration: 1,
animations: { [weak self] in
guard let strongSelf = self else { return }
backgroundView.alpha = strongSelf.presenting ? 1 : 0
})
UIView.addKeyframe(
withRelativeStartTime: 0,
relativeDuration: …Run Code Online (Sandbox Code Playgroud) ios ×8
swift ×6
xcode ×2
audio ×1
autolayout ×1
core-image ×1
embedded ×1
gaussian ×1
instagram ×1
interactive ×1
rest ×1
subclass ×1
subview ×1
transitions ×1
uiscrollview ×1
uitextview ×1
usb ×1
view ×1
xctest ×1