我有一个简单的(我认为)问题:我有一个UIImageView,我在故事板中设置了多个约束.
有时,我需要禁用约束,并frame手动设置它,但稍后,我将要重新启用这些约束并让视图返回到约束所决定的位置.
我以为我可以这样做:
@IBOutlet weak var imageView: UIImageView!
@IBOutlet weak var constraint: NSLayoutConstraint!
func example() {
//to set its location and size manually
imageView.removeConstraint(constraint)
imageView.frame = CGRectMake(...)
//to cause it to return to its original position
imageView.addConstraint(constraint)
}
Run Code Online (Sandbox Code Playgroud)
但是,有了这个,我得到了错误2015-08-26 01:14:55.417 Constraints[18472:923024] The view hierarchy is not prepared for the constraint: <NSLayoutConstraint:0x7fbb72815f90 V:[_UILayoutGuide:0x7fbb72814c20]-(100)-[UIImageView:0x7fbb72814540]>.有谁知道为什么会出现这个错误?
view通过调用添加约束来self.view.addConstraint(...)消除错误,但仍然没有将图像视图带回到它应该的位置.
我注意到我甚至不必删除或停用约束,以便能够设置imageView没有问题的框架,只要我不打电话setTranslatesAutoresizingMaskIntoConstraints(true).
我已经看过这个问题,但答案似乎不必要地复杂,可能已经过时,甚至不适用.
我也看到了这个问题,但这并没有涵盖可以重新启用的约束 - 只能禁用它们.
试图设置active属性:
self.top.active = …Run Code Online (Sandbox Code Playgroud) 我想找出一种方法,这样,如果用户按下"取消"按钮(我认为不能删除)ABPeoplePickerNavigationController,视图控制器要么不关闭,要么自动重新打开.
例如,给出以下内容:
var picker = ABPeoplePickerNavigationController()
picker.peoplePickerDelegate = self
self.presentViewController(picker, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)
我希望能够做到这样的事情:
if (self.presentedViewController != picker && !userContinuedPastPicker) {
//where userContinuedPastPicker is a boolean set to false
//in a delegate method called when the user clicks on an a contact
//(meaning the user didn't press the cancel button but instead clicked on a contact)
//create and present a UIAlertAction informing the user they must select a contact
//present picker again
self.presentViewController(picker, animated: true, completion: nil) …Run Code Online (Sandbox Code Playgroud) uinavigationcontroller abaddressbook ios presentviewcontroller swift
鉴于某个地址的图像,http://www.thissite.will/never/be-finished.png最简单的方法是将它分享到Twitter,最好不带卡?
用户自定义SVG,当他们满意时,我将其转换为PNG并将其存储在我的服务器上.
我想让他们选择在Twitter上分享图片.他们点击了一个按钮(我可以实现),然后会打开一个对话框,在那里他们可以添加到推文(应该已经包含图片).
我知道类似的问题已经被问过这个网站,但我不希望使用"一卡通"共享图像.相反,我想要一个典型的非卡片推文,只需要一张图片(就像这样).
我反复浏览了Twitter开发者文档,但是找不到有用的信息.该POST状态/ update_with_media方法已过时,并链接到"上传媒体指南"建议的替换,是坏了.我认为,本指南是它要链接的内容,但它没有JavaScript代码来说明实际应该如何实现它.
请帮忙.
我的尝试,基于POST media/upload:
$.ajax({
url: "https://upload.twitter.com/1.1/media/upload.json",
format: "post",
data: {"data" : link}
}).success(function(response) {
console.log(":)");
console.log(response);
}).fail(function(response) {
console.log(":(");
console.log(response.responseText);
});
Run Code Online (Sandbox Code Playgroud)
这失败了.该responseText是{"errors":[{"code":215,"message":"Bad Authentication data."}]}.
基本上,我想做类似于StackOverflow的工作.当您单击某个问题上的"共享",然后选择Twitter时,会弹出一个新窗口,其中填充了该问题的链接以及用户可以编写自己的消息的位置.(Twitter提供界面.)
然而,在我的情况下,当发送推文时,而不是返回到页面的链接以及从中提取的一些文本,我想只有一个图像.
我有整个屏幕的截图screenshot,使用以下内容生成:
let layer = UIApplication.sharedApplication().keyWindow!.layer
let scale = UIScreen.mainScreen().scale
UIGraphicsBeginImageContextWithOptions(layer.frame.size, false, scale);
layer.renderInContext(UIGraphicsGetCurrentContext())
let screenshot = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
Run Code Online (Sandbox Code Playgroud)
我想裁剪它,以便不包括标签栏,我尝试使用以下代码:
let crop = CGRectMake(0, 0, //"start" at the upper-left corner
self.view.bounds.width, //include half the width of the whole screen
self.view.bounds.height + self.navigationController!.navigationBar.frame.height) //include the height of the navigationBar and the height of view
let cgImage = CGImageCreateWithImageInRect(screenshot.CGImage, crop)
let image: UIImage = UIImage(CGImage: cgImage)!
Run Code Online (Sandbox Code Playgroud)
此代码image仅显示屏幕的一小部分,从屏幕左上角开始的矩形(0,0),向右延伸不到屏幕宽度的一半,然后向下不到一半屏幕的高度.不过,我想要包括整个屏幕,除了标签栏占用的区域.有没有这种方法来裁剪它?
我正在尝试准备我的应用程序以传递给翻译人员进行本地化,但我遇到了一些问题.我将文件"Localizable.strings"添加到我的项目中,并选中了"Use Base Internationalization".
然而,看看我在Xcode中的应用程序,我没有看到任何语言的"Base.lproj"或"en.lproj"或.lproj文件,但是当我在Finder中打开我的应用程序时,我可以看到"en.lproj" "和"es.lproj"文件夹.
我猜这可能是genstrings实用程序对我不能正常工作的原因.我的代码中有很多调用self.navigationItem.title = NSLocalizedString(...),但是当我执行时genstrings *.swift,Localizable.strings没有任何变化,我仍然看不到任何.lproj文件夹.
我正在使用D3.js <path>直线绘制一些SVG .所有这些元素都包含在<g>具有相同垂直变换的a中.
我想围绕圆弧"包裹"这些元素.最后,每个矩形应该成为圆弧的一小部分,垂直线将指向圆的中心.
我意识到我可能从一开始就在弧形中执行此操作:例如,绘制粗圆圈段端对端而不是矩形.然而,这听起来像很多数学和计算,特别是对于刚接触SVG的人.
有没有办法将这些元素转换为事后曲线,这意味着我可以使用绘制这些矩形的代码 - 可能通过更改transform属性?如果有一个外部SVG库(虽然我看起来没有成功),我也考虑使用它.
用户自定义 SVG,当他们满意时,我想给他们在 Facebook 上共享图像的选项。
我知道 Facebook 不接受 SVG,因此,在阅读此问题后,我想出了以下使用canvg:
var svgText = "<svg>" + $("#canvas2").html() + "</svg>";
canvg(document.getElementById('drawingCanvas'), svgText);
var img = document.getElementById('drawingCanvas').toDataURL("image/png");
Run Code Online (Sandbox Code Playgroud)
尽管命名.toDataURL,img不是那么URL(至少,我不认为这是),但> 10,000个字符的字符串,与众生data:image/png;base64,...。
如果我然后尝试允许用户在 Facebook 上共享 PNG,
window.FB.ui({
href: "https://dna.land",
method: 'feed',
name: 'name',
link: "dna.land",
picture: img,
caption: 'mywebsite.com',
description: "description",
message: "message"
}, function(response) {});
Run Code Online (Sandbox Code Playgroud)
我得到的错误消息是“参数href”是必需的(我显然正在提供......可能img太长并且JSON被截断?),尽管我也看到我没有提供有效的URL为picture。
如何在 Facebook 上分享图像数据?
如果无法使用 PNG 的原始 base 64 编码来做到这一点,我不反对将 PNG 文件临时存储在服务器上。但是,理想情况下,我只会存储 24 小时、几个月或一些小的时间跨度,然后可以在用户的帖子不消失的情况下将其删除。那可能吗?
我的数据存在严重的阶级失衡。约99.99%的样品为阴性。正数(大致)在其他三个类别之间平均分配。我认为我正在训练的模型基本上总是在预测多数学生。因此,我正在尝试对课程进行加权。
模型
model = Sequential()
#Layer 1
model.add(Conv1D( {{choice([32, 64, 90, 128])}}, {{choice([3, 4, 5, 6, 8])}}, activation='relu', kernel_initializer=kernel_initializer, input_shape=X_train.shape[1:]))
model.add(BatchNormalization())
#Layer 2
model.add(Conv1D({{choice([32, 64, 90, 128])}}, {{choice([3, 4, 5, 6])}}, activation='relu',kernel_initializer=kernel_initializer))
model.add(Dropout({{uniform(0, 0.9)}}))
#Flatten
model.add(Flatten())
#Output
model.add(Dense(4, activation='softmax'))
Run Code Online (Sandbox Code Playgroud)
({{...}}用于Hyperas。)
我如何尝试加权
\ 1。class_weight在中使用model.fit()
model.fit(X_train, Y_train, batch_size=64, epochs=10, verbose=2, validation_data=(X_test, Y_test), class_weight={0: 9999, 1:9999, 2: 9999, 3:1})
Run Code Online (Sandbox Code Playgroud)
\ 2。使用class_weight在model.fit()与sklearn compute_class_weight()
model.fit(..., class_weight=class_weight.compute_class_weight("balanced", np.unique(Y_train), Y_train)
Run Code Online (Sandbox Code Playgroud)
\ 3。具有自定义损失功能
from keras import …Run Code Online (Sandbox Code Playgroud) 我最近开始在Python中使用turtle模块,我承认,我是一个完整的新手.我一直无法获得图形窗口,其中乌龟的绘图保持打开状态.即使我尝试运行这样简单的事情:
import turtle
wn = turtle.Screen()
tur = turtle.Turtle()
tur.forward(50)
Run Code Online (Sandbox Code Playgroud)
我得到的是Python启动器图标,在我的码头上出现一瞬间关闭.感谢任何帮助,顺便说一下,我在Aptana Studio 3中这样做.
swift ×4
ios ×3
javascript ×3
svg ×3
graphics ×2
python ×2
canvg ×1
cgimage ×1
d3.js ×1
facebook ×1
genstrings ×1
keras ×1
localization ×1
module ×1
oauth ×1
screenshot ×1
sharing ×1
tensorflow ×1
twitter ×1
xcode ×1