我正在使用NetBeans和谷歌浏览器进行C hrome调试教程.包括扩展在内的所有内容似乎都能正常工作,但是当我进入section时Use the Debugger
,我看不到html代码插入断点.
在浏览器上选择了inspect popup后,它会在Console中打开,什么都不显示,Elements会显示popup.html并添加了图像.当我转到Sources时,可以打开文件popup.html,但唯一的第1行是空白.如果我打开js文件,js文件就在那里并且可以编辑(断开指向).
对不起 - 可能是基本的东西,但我对此并不是很有经验.我已经尝试重新加载并刷新一切.
后续行动:通过进入location.reload(true)
控制台提示符,popup.html文件变为Source!为什么?不知道.
我希望这可以节省一些人在我磕磕绊绊的一整天.
我试图实现自动完成,但找不到一个适用于Swift的示例.下面,我想要转换Ray Wenderlich的自动完成教程和2010年的示例代码.最后,代码编译,但包含可能的完成的表格没有出现,我没有经验可以看到为什么它没有被隐藏shouldChangeCharactersInRange.
class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource, UITextFieldDelegate {
@IBOutlet weak var textField: UITextField!
let autocompleteTableView = UITableView(frame: CGRectMake(0,80,320,120), style: UITableViewStyle.Plain)
var pastUrls = ["Men", "Women", "Cats", "Dogs", "Children"]
var autocompleteUrls = [String]()
override func viewDidLoad() {
super.viewDidLoad()
autocompleteTableView.delegate = self
autocompleteTableView.dataSource = self
autocompleteTableView.scrollEnabled = true
autocompleteTableView.hidden = true
}
func textField(textField: UITextField!, shouldChangeCharactersInRange range: NSRange, replacementString string: String!) -> Bool
{
autocompleteTableView.hidden = false
var substring = (textField.text as NSString).stringByReplacingCharactersInRange(range, withString: string)
searchAutocompleteEntriesWithSubstring(substring)
return true // …
Run Code Online (Sandbox Code Playgroud) 在使用UIImageView中的正确宽高比时,我在设置图像时遇到了很多麻烦.
最初从plist插入核心数据的所有图像都符合正确的宽高比,但是当使用应用程序(来自现有图像库)添加图像时,三个视图中的两个视图中的图像看起来比视图本身大 - 所以只显示照片的左上角.在下面的屏幕截图中,表格的顶行显示通过plist添加的图像,接下来的两行(MY RECORDS)显示不限于视图的照片.
上述视图中的单元格以通常的方式创建,然后在其自己的方法中进行配置,其中定义了属性.
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath)
self.configureCell(cell, indexPath: indexPath)
return cell
}
func configureCell(cell: UITableViewCell, indexPath: NSIndexPath)
{
let record = fetchedResultsController.objectAtIndexPath(indexPath) as! Record
cell.textLabel!.text = record.subject
cell.detailTextLabel!.text = record.shortDetails
if let imageArray = imagesForRecord(record)
{
if imageArray.count > 0
{
cell.imageView?.contentMode = .ScaleAspectFit
cell.imageView?.clipsToBounds = true
cell.imageView?.image = imageArray[Int(record.featureImageIndex)]
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是图像不会缩放,也不会在imageView的范围内剪切.最初加载的图像(如熊)不需要设置contentMode或clipsToBounds.
我在不同的视图控制器(称为VC2)中有相同的问题,但此视图是使用故事板定义的.我有一个UIImage视图,它被约束到具有固定大小约束的UIView的所有方面.UIImage视图设置为Aspect Fit,但是当我从设备库中设置图像时,它看起来像上面的图片 - 宽高比是正确的,但只显示图像的上角.
在另一个视图中,我有与VC2几乎相同的故事板布局,但在这里它按预期工作.我看不出约束,属性和使用相同照片(来自库)的任何差异.
我看不出任何差异,我无法想象如何从这里调试.毫无疑问,我误解了关于Aspect Fit或如何应用它的一些非常简单的事情.
我正在尝试了解自动布局限制.遵循Ray W教程挑战(没有解决方案或讨论),布局应如下所示:
在IB中完成它很容易 - 创建一个宽度和高度的黄色视图,垂直居中并水平固定到边缘; 然后在该视图中创建具有简单约束的标签,字段和按钮.
我的第一个问题是:如果标签具有内在的内容大小,而其他所有内容都固定在黄色视图上,那么为什么我需要定义固定的宽度和高度?为什么不从其子视图的内在内容推断宽度和高度?
继续并尝试在代码中重新创建此布局给了我一个错误:
终止应用程序由于未捕获的异常"NSGenericException",理由是:"无法激活约束的项目
<UILabel: 0x7a961d60; frame = (0 0; 0 0); text = 'Password:'; userInteractionEnabled = NO; layer = <_UILabelLayer: 0x7a961e40>>
,并<UIView: 0x7a96b6f0; frame = (0 0; 0 0); layer = <CALayer: 0x7a96b880>>
因为他们没有共同的祖先.约束是否引用不同视图层次结构中的项目?这是非法的.
第二个问题:这些图层是什么,我的所有视图都在heirachy中 - superview包含黄色视图,包含文本标签和字段.
经过很多痛苦,我试图完全重新创建IB中的约束,但这只添加了以下错误:无法同时满足约束.
(
"<NSLayoutConstraint:0x7ac57370 H:[UIView:0x7a96b6f0(0)]>",
"<NSLayoutConstraint:0x7ac57400 H:|-(8)-[UILabel:0x7a96bb50'Username:'] (Names: '|':UIView:0x7a96b6f0 )>",
"<NSLayoutConstraint:0x7ac57430 UILabel:0x7a96bb50'Username:'.trailing == UITextField:0x7a961020.leading + 8>",
"<NSLayoutConstraint:0x7ac57520 UITextField:0x7a961020.trailing == UIView:0x7a96b6f0.trailing - 8>" )
Run Code Online (Sandbox Code Playgroud)
最后的问题:我怎么知道视图是什么视图0x7aetc?我的代码中的约束在哪里?其余的看起来不错(?).
我必须在某个基本层面做一些非常错误的事情.
这是我的代码:
import UIKit
class ViewController: UIViewController {
let centerView = …
Run Code Online (Sandbox Code Playgroud) I've a fixed grid of collection view cells (UICollectionView) but the cells in the bottom row always appears with a slightly smaller width on screen. The frame size (or bounds) and calculated width used within collectionViewLayout: UICollectionViewLayout sizeForItemAt are the same for all rows.
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize
{
let settings = currentContents[indexPath.item]
let height = CGFloat(30)
// /sf/ask/3844065921/
var cellWidth = CGFloat()
let availableWidth = collectionView.bounds.size.width
print("available width", availableWidth)
let minimumWidth …
Run Code Online (Sandbox Code Playgroud) 一段时间以来,我一直在愉快地使用索引、匹配和计数来列出唯一值,但现在我想根据两列值列出 Excel 工作表中的唯一对。例如,如果数据是这样:
输入
> Col. 1 Col. 2
A x
A x
B x
B y
B x
C x
C y
C x
Run Code Online (Sandbox Code Playgroud)
唯一的对列表应该是:
> Col. 1 Col. 2
A x
B x
B y
C x
C y
Run Code Online (Sandbox Code Playgroud)
这似乎是一个常见的建议: =INDEX(!D$4:D$5, MATCH(0, COUNTIF($A$57:$A59,!$C$4:$C$5) * COUNTIF($B$57:$B59, !$D$4:$D$5), 0)),"") 但不会返回像示例中的 C 和 y 对那样的值,因为 C 和 y 已经出现在不同的对中。
我尝试过 concat (在 countif 中不起作用)、sumproduct (似乎不喜欢 sumproduct(--($A$57:$A59=!$C$4:$C$5), --($B$57 :$B59 = !$D$4:$D$5)); 和 countifs($A$57:$A59,!$C$4:$C$5),$B$57:$B59,!$D$4:$D$5 )(返回错误)。
PS - 我对 VB 一无所知,并且由于各种原因需要公式方法。
如果我想让相同的基本 UITableView 出现在两个不同的场景中,使用一个数据源并为两个表委托位置是个好主意吗?
我想试试这个,但是当我在 IB 中选择 table view 并尝试将线拖到 UITableView 文件的自定义类,甚至到另一个自定义视图控制器时,它不会连接。似乎只能将当前的视图控制器变成表的数据源和委托(?)。
我想知道这是否至少与这个问题相似,但即使是这样,这是如何快速完成的(也许有一种新的方法可以做到这一点)。
我有一个带有按钮的UICollectionView来创建单元格,它应该按照创建的顺序出现(1,2,3,4在空间允许的情况下向下和向下).文本视图受到灵活宽度的约束以填充单元格.单元的大小取决于设备和旋转,以允许每行1,2,3或4个单元格如下:
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize
{
var size = collectionView.bounds.size // size of collection view
switch size.width
{
case 0...450:
println(size.width)
return CGSize(width: (size.width - 10), height: 145)
case 451..<768:
println(size.width)
return CGSize(width: ((size.width - 10) / 2), height: 145)
case 768:
println(size.width)
return CGSize(width: ((size.width - 10) / 3), height: 145)
default:
println(size.width)
return CGSize(width: 248, height: 150) // in case there is no size
}
}
Run Code Online (Sandbox Code Playgroud)
左右插图设置为0,这种方式有效 - 但只有在我旋转设备并添加单元格时才有效.详细地:
以下问题的答案已部分贬值:Storing UIColor object in Core Data和Best way to save and检索 UIColors to Core Data。
1) 'unarchiveObject(with:)' 在 iOS 12.0 中已弃用:使用 +unarchivedObjectOfClass:fromData:error: 代替
2) 'archivedData(withRootObject:)' 在 iOS 12.0 中已弃用:使用 +archivedDataWithRootObject:requiringSecureCoding:error: 代替
extension UIColor
{
class func color(withData data:Data) -> UIColor
{ return NSKeyedUnarchiver.unarchiveObject(with: data) as! UIColor }
func encode() -> Data
{ return NSKeyedArchiver.archivedData(withRootObject: self) }
}
Run Code Online (Sandbox Code Playgroud)
尝试遵循编译器说明和文档,我无法消除错误。有人可以澄清 Swift 5 中上述扩展方法的正确等效项吗?
swift ×6
ios ×3
uitableview ×2
autocomplete ×1
autolayout ×1
core-data ×1
datasource ×1
debugging ×1
delegates ×1
excel ×1
uicolor ×1
uiimageview ×1
xcode ×1