我是新手Swift,现在制作的项目包括从网上展示很多照片,我明白我需要使用SDWebImage.我在这里和其他地方看到了相关的问题,但都是Objective-C语法,不适合我.
我到现在为止做了什么:
SDWebImage将文件夹复制到我的文件夹import#import <"SDWebImage/UIImageView+WebCache.h">
import SDWebImage/UIImageView+WebCache.h
等等..
有人可以帮我导入它
我刚刚买了一本书并在Swift中学习编程IOS.我想创建一个像Snapchat这样的表视图列表:

然后我将UITableView的所有约束设置为
0:
但是,桌子左边还有一个余量,为什么呢?

我想安排一个NSarray,其中包含UItableView中的名称,如:
前5
瑞安
约翰
罗伊
阿梅拉
拍
5-10
戈斯林
摊晒
麦克风
贾斯汀
兰博
木材
10-15
...
...
15-20
...
...
20-25
...
...
想知道我应该用什么来保存标题,viewForHeaderInSection或者只是cellForRowAtIndexPath?
我无法设法使视图的宽度适应不同屏幕尺寸的表格视图的大小
这是我在viewDidLoad()上的代码
view.tableView.registerNib(UINib(nibName: "Header", bundle: NSBundle.mainBundle()), forHeaderFooterViewReuseIdentifier: "Header")
Run Code Online (Sandbox Code Playgroud)
并在表视图代表:
func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
var cell = tableView.dequeueReusableHeaderFooterViewWithIdentifier("Header") as! Header
// etc
}
Run Code Online (Sandbox Code Playgroud)
请记住,我不想把它放在故事板中,而且我正在使用自动布局.
有小费吗?
我一直在尝试最长的时间,从plist到TableView显示一个字典数组.这是.plist文件的片段.
<array>
<dict>
<key>dexNumber</key>
<integer>1</integer>
<key>formOrder</key>
<integer>1</integer>
<key>iconFilename</key>
<string>pokemon-icon-1.png</string>
<key>name</key>
<string>Bulbasaur</string>
<key>yield</key>
<dict>
<key>attack</key>
<integer>0</integer>
<key>defense</key>
<integer>0</integer>
<key>hp</key>
<integer>0</integer>
<key>spAttack</key>
<integer>1</integer>
<key>spDefense</key>
<integer>0</integer>
<key>speed</key>
<integer>0</integer>
</dict>
</dict>
<dict>
<key>dexNumber</key>
Run Code Online (Sandbox Code Playgroud)
代码永远不会到达(返回self.data.count),因为它总是返回Unexpected nil,同时在第三行展开可选项.
if let path = NSBundle.mainBundle().pathForResource("dex", ofType: "plist"){
if let dict = NSDictionary(contentsOfFile: path){
data = dict.objectForKey("name") as! [String]
}
}
Run Code Online (Sandbox Code Playgroud)
将(let dict = NSDictionary)更改为(let dict = NSArray)让我可以使用println在控制台上打印出数据,但它不会让我在tableview上显示任何数据.此外,该方法只允许我查看包含其所有键的1个数组,而不是查看一个键的所有字典对象.
尝试以NSDictionary的形式查看文件的任何实例始终返回nil.任何以NSArray形式返回的实例都会给出无法在tableview上显示的结果,但可以使用println在控制台上显示.此代码段是打印结果的代码示例.
let resultDictionary = NSArray(contentsOfFile: path)
println("Loaded dex.plist file is --> \(resultDictionary?.description)")
var myDict = NSArray(contentsOfFile: path)
if let dict = myDict …Run Code Online (Sandbox Code Playgroud) 我有一个有3个tableView的视图.一个是"主表视图",然后我有一个'答案表视图'和'百分比表视图'.
加载屏幕时,主表视图占据屏幕的前95%.屏幕的底部是一个包含2个按钮的UIView."答案"和"百分比".
它的工作方式是,如果我单击"百分比",它会将主表视图的高度更改为0,并将该高度提供给答案表视图.这会将"Answers/Percentage"视图设置为顶部,并显示其下方的Answers或Percentage TableView.
这是一个例子:

正如您所看到的,我点击"百分比"来动画它.如果再次点击"百分比",它会将其恢复原状.
但是,我想要做的是如果"Answers/Percentage"视图位于View的底部,并且用户滚动Main Feed UP到达tableView内容的最后(不仅仅是结尾,而是结束和再多一点),我想像.gif一样动画起来.
类似地,如果"答案/百分比"位于顶部,并且用户将较低的"答案表视图"向下滚动超过上面没有更多数据的某个点,则它将完全动画.
此外,我不希望"答案/百分比"视图位于中间,并显示顶视图和底视图.所有这一个,或另一个,但不是两者兼而有之.我现在有.
我需要知道的是......如何检测用户是否已经滚过表格视图的顶部或底部+30像素,以启动我的动画?
我希望我的一些单元格不响应用户交互并尝试通过以下方式设置:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
....
if let header = tmpTableItem as? EKHeader {
tableViewCell.textLabel!.text = menuHeader.name
tableViewCell.selectionStyle = UITableViewCellSelectionStyleNone
} ....
Run Code Online (Sandbox Code Playgroud)
但我得到错误:
使用未解析的标识符UITableViewCellSelectionStyleNone
但这似乎是禁止用户交互的正确方法UITableViewCell.我究竟做错了什么?
我有一个自定义单元格(子类UITableViewCell),我有一些UITextField在其中我想要选择的单元格中的相对位置.
所以我的代码类似于:
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
NSInteger offset = 230;
UITextField *myTextField = [[UITextField alloc] initWithFrame:CGRectMake(offset, 10, 95, 30)];
[self.contentView addSubview:myTextField];
}
return self;
}
Run Code Online (Sandbox Code Playgroud)
现在我的问题是这在纵向模式下工作正常但在横向模式下我想调整偏移量来模拟我的文本字段的右对齐.同样,我希望能够调整一个iPad.
如何获得当前的细胞宽度?
我试图使用self.contentView.frame.size.width,self.contentView.bounds.size.width但两者总是返回320.
我知道这听起来像一个本来会被问过千次的问题,但我还没有找到任何东西......
注意:我知道重复使用单元格会有问题,但我还没有达到这一点.
我试图删除tableView分隔符,我通过将分隔符样式设置为none来执行此操作,这将删除分隔符但在单元格之间留下空格.
我的问题是如何删除单元格之间的空间?
任何帮助,将不胜感激.
我想倾听/检测一个didSelectRowAtIndexPath:变化viewController1,然后根据这个选择改变一些东西viewController2.
知道我怎么可能这样做吗?
ios ×10
uitableview ×10
swift ×5
objective-c ×3
iphone ×2
autolayout ×1
cocoa-touch ×1
dictionary ×1
nsarray ×1
plist ×1
sdwebimage ×1
xcode ×1
xib ×1