我在Xcode 6中使用通用故事板,目标是iOS 7及更高版本.我已经实现了一个UISplitViewController现在支持运行iOS 8的iPhone本身支持,Xcode将自动向iOS 7后端移植.它运行得非常好,除非你在iPhone上以iOS 8纵向启动应用程序,拆分视图的详细视图我希望第一次看到主视图控制器时显示控制器.我相信这是iOS 8的一个错误,因为当您在iOS 7上运行应用程序时,它会正确显示主视图控制器.但iOS 8现在是通用汽车,而且这种情况仍在发生.如何进行设置以便在拆分拆分视图控制器时(屏幕上只显示一个视图控制器),当显示拆分视图控制器时,它会显示主视图控制器而不是详细信息?
我在Interface Builder中创建了这个拆分视图控制器.拆分视图控制器是标签栏控制器中的第一个视图控制器.主控和详细VC都是导航控制器,其中嵌入了表视图控制器.
interface-builder master-detail uisplitviewcontroller ios ios8
在iOS 8中,您可以通过简单地设置估计的行高来获得100%动态表格视图单元格,然后使用"自动布局"在单元格中布局元素.如果内容物的高度增加,则细胞的高度也会增加.这非常有用,我想知道是否可以在表格视图中为节标题完成相同的专长?
例如,可以创建一个UIViewin tableView:viewForHeaderInSection:,添加一个UILabel子视图,为视图指定标签的自动布局约束,并使视图的高度增加以适应标签的内容,而不必实现tableView:heightForHeaderInSection:?
viewForHeaderInSection状态文档:"只有在实现tableView:heightForHeaderInSection:时,此方法才能正常工作." 我还没有听说过iOS 8有什么变化.
如果一个人不能这样做,模仿这种行为的最佳方法是什么?
我有几个SVG图形我想通过我的外部样式表修改颜色 - 而不是直接在每个SVG文件中.我不是将图形放在线上,而是将它们存储在我的图像文件夹中并指向它们.
我已经以这种方式实现它们以允许工具提示工作,并且我还将每个包装在<a>标签中以允许链接.
<a href='http://youtube.com/...' target='_blank'><img class='socIcon' src='images/socYouTube.svg' title='View my videos on YouTube' alt='YouTube' /></a>
Run Code Online (Sandbox Code Playgroud)
这是SVG图形的代码:
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="stylesheets/main.css" type="text/css"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 56.69 56.69">
<g>
<path d="M28.44......./>
</g>
</svg>
Run Code Online (Sandbox Code Playgroud)
我把以下内容放在我的外部CSS文件(main.css)中:
.socIcon g {fill:red;}
Run Code Online (Sandbox Code Playgroud)
但它对图形没有影响.我也尝试过.socIcon g path {}和.socIcon path {}.
有些东西不对,也许我的实现不允许外部CSS修改,或者我错过了一步?我真的很感谢你的帮助!我只需要能够通过我的外部样式表修改SVG图形的颜色,但我不能失去工具提示和链接能力.(虽然我可能没有工具提示,但我可以住.)谢谢!
Xcode 8 beta 4中的新功能NSError与Swift Error协议类型相连.这会在处理失败的SKPaymentTransactions 时影响StoreKit .您应该检查以确保没有发生错误,因为事务被取消以了解是否向用户显示错误消息.你通过检查错误来做到这一点code.但有了Error代替NSError,没有code定义.我无法弄清楚如何正确获取错误代码Error.
这在Swift 3的早期版本中有效:
func failedTransaction(_ transaction: SKPaymentTransaction) {
if let transactionError = transaction.error {
if transactionError.code != SKErrorCode.paymentCancelled.rawValue {
//show error to user
}
}
...
}
Run Code Online (Sandbox Code Playgroud)
现在error是Error不是NSError,code是不是成员.
现在在iOS 11中,sizeThatFits不从UINavigationBar子类调用该方法.更改UINavigationBar导致故障和错误插入的框架.那么,现在如何定制导航栏高度的任何想法?
My Today扩展需要基于窗口小部件显示的内容具有动态高度.我能够通过在最底部元素上添加约束来实现这一点:底部布局指南的顶部小于或等于最底部元素的底部,常量为0,优先级为999,乘数为1.
这与iPhone上的预期完全一样 - 小部件高度适合所有内容,并且在显示下一个小部件之前应用默认的底部边距.
但是在iPad上似乎将我的小部件的高度设置为等于最大高度通知中心将允许小部件 - 我的小部件下方有很多空间,它几乎全屏.
如何删除多余的空间?
我确切地知道问题是什么,但我不确定如何解决它 - 请参阅"问题"部分.首先让我解释一下设置:
设置:
我在故事板中设置了此扩展的视图,没有任何编程方式.视图由垂直堆叠的5个元素组成,其他一些元素水平堆叠.这些是从上到下的垂直线的自动布局约束 - 其中未声明的优先级为1000,乘数1:
UILabel: height = 35, top space to top layout guide with constant of 10
UIButton: equal height and width to a different button (whose aspect ratio is 1:1, there is no fixed width/height), top space to label 10
UIButton: equal height and width to same button, top space to above button 8
UIButton: equal height and width to same button, top space to above …Run Code Online (Sandbox Code Playgroud) 我在Storyboard中设置了一个嵌入导航控制器的视图控制器.在这个导航控制器中,我检查了显示导航栏和显示工具栏,并在模拟指标中分别在顶栏和底栏中启用了导航栏和工具栏.然后我从视图控制器"显示例如推送"segue到另一个视图控制器.在两个视图控制器上,我以相同的方式设置了模拟指标,因此导航栏和工具栏在所有三个控制器上都可见.
问题是,我可以将条形按钮项添加到导航栏和工具栏的第一个视图控制器,但我无法将条形按钮项添加到第二个视图控制器上的导航栏.当我在导航栏上放下一个按钮时,它会被添加到工具栏中.我不能双击导航栏添加标题.在大纲中,我看到第二个视图控制器上没有导航项,但它位于第一个视图控制器中.
我可以通过编程方式向导航栏添加按钮,但我想在Storyboard中直观地进行操作.我的问题是,这个设置有什么问题,或者这是Xcode的错误?


因为对象是引用类型而不是值类型,所以如果设置UIView等于另一个UIView,则视图是同一个对象.如果你修改一个,你也会修改另一个.
我有一个有趣的情况,我想UIView在另一个视图中添加一个子视图,然后我做一些修改,这些修改不应该影响原始UIView.我如何制作副本,UIView以便我可以确保将该副本添加为子视图而不是对原始副本的引用UIView?
请注意,我无法以创建原始的方式重新创建视图,我需要一些方法来创建给定任何UIView对象的副本.
我正在使用Stripe API设置付款,以允许用户在iPad上登录其Stripe帐户并接受任何人的付款.为此,我使用Stripe Connect登录并保存他们的帐户ID,然后我用它STPPaymentCardTextField来获取信用卡详细信息,然后使用Stripe iOS SDK我提交了一张卡(带有测试卡信息) - 4242 ...)并通过获取令牌createTokenWithCard.这成功返回一个令牌.此时我需要将该令牌连同目标帐户ID(在用户登录后提供给应用程序)和其他信息(货币,金额等)提交到我自己的服务器以将付款提交给Stripe.我已经确认信息正在提交并转发到Stripe,但Stripe返回错误:
{ type: 'invalid_request_error',
app[web.1]: message: 'No such token: tok_13vxes2eZkKYli2C9bHY1YfX',
app[web.1]: param: 'source',
app[web.1]: statusCode: 400,
app[web.1]: requestId: 'req_7AIT8cEasnzEaq' },
app[web.1]: requestId: 'req_7AIT8cEasnzEaq',
app[web.1]: statusCode: 400 }
Run Code Online (Sandbox Code Playgroud)
如果我们直接提交信用卡信息,完全避免令牌,则付款成功.这个令牌有问题,我们不确定它为什么会失败.这可能会出错?
[[STPAPIClient sharedClient] createTokenWithCard:card completion:^(STPToken *token, NSError *error) {
//submit tokenId and other info to 'charge' endpoint below
}
Run Code Online (Sandbox Code Playgroud)
的NodeJS:
app.post('/charge', (req, res, next) => {
stripe.charges.create({
amount: req.body.amount,
currency: req.body.currency,
source: req.body.token,
description: req.body.description,
destination: req.body.destination
}, (err, charge) => { …Run Code Online (Sandbox Code Playgroud) 如何在Interface Builder中使用Blur和Vibrancy的视觉效果视图?
我把这个项目拖到视图中,然后拖动UILabel到层次结构中的最后一个视图 - contentView我假设的充满活力的效果.这会导致视图模糊不清,但没有可见的标签.在其他任何地方我将标签放在层次结构中它确实变得可见,但它只是纯黑色文本.

interface-builder ios uiblureffect uivibrancyeffect uivisualeffectview
ios ×8
ios8 ×3
autolayout ×2
swift ×2
css ×1
external ×1
html ×1
ios11 ×1
node.js ×1
stylesheet ×1
svg ×1
swift3 ×1
uiblureffect ×1
uitableview ×1
uiview ×1
xcode ×1
xcode6 ×1
xcode6-beta6 ×1