当我点击选择按钮indexpath.row == 0或任何所以,只能用相应的"会话标签值"会改变,但这里不会发生.它会改变下面的单元格值,即indexpath == 7或8,我认为这里是单元格的重用,所以我怎么能避免它.
我的代码如下.
1.UITableViewCell类:
import UIKit
class DemoTableViewCell: UITableViewCell {
@IBOutlet weak var mSelectButton: UIButton!
@IBOutlet weak var mDateLabel: UILabel!
@IBOutlet weak var mSessionLabel: UILabel!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
}
Run Code Online (Sandbox Code Playgroud)
ViewController类: -
导入UIKit
class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {
var month_year = ""
var fromYear = ""
var toYear = ""
var …Run Code Online (Sandbox Code Playgroud)我有像测验一样的表格视图单元格。在每个单元格中都有一个按钮,以及如何确定在哪个单元格中按下了按钮。也许通过IndexPath ???这就是我将按钮连接到的方式
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "QuestionCell")!
variant1 = cell.contentView.viewWithTag(1) as! UIButton
variant2 = cell.contentView.viewWithTag(2) as! UIButton
variant3 = cell.contentView.viewWithTag(3) as! UIButton
variant4 = cell.contentView.viewWithTag(4) as! UIButton
variant1.addTarget(self, action: #selector(self.variant1ButtonPressed), for: .touchUpInside)
variant2.addTarget(self, action: #selector(self.variant2ButtonPressed), for: .touchUpInside)
variant3.addTarget(self, action: #selector(self.variant3ButtonPressed), for: .touchUpInside)
variant4.addTarget(self, action: #selector(self.variant4ButtonPressed), for: .touchUpInside)
return cell
}
func variant1ButtonPressed() {
print("Variant1")
variant1.backgroundColor = UIColor.green
}
func variant2ButtonPressed() {
print("Variant2")
variant2.backgroundColor = UIColor.green
}
func variant3ButtonPressed() {
print("Variant3") …Run Code Online (Sandbox Code Playgroud) 我需要UITableViewCell根据它的内容设置动态高度.
这是我的演示图片:
在这个标签中有动态内容所以根据标签内容,我的单元格高度应该改变..
我得到了约束错误.在这个单元格中,有两个UILabel可用,并且都具有动态内容大小.(我已经使用只有一个标签的自动调整大小的单元格进行了演示.)但是在这个单元格中有两个标签.所以错误是xcode建议我给Y POS或Height标签,但我已经设置了顶级约束.(标签线设置为0的4个侧面约束)但是它仍然失败.我也尝试使用此代码
self.tableView.estimatedRowHeight = 250.0;
self.tableView.rowHeight = UITableViewAutomaticDimension;
Run Code Online (Sandbox Code Playgroud)
这是我的演示代码
在iOS 11中这是UITableview行为的一个相当大的变化,现有代码/或iOS11以下可能有不同的工作方式.当我在tableview行中插入数据时,行的行为很奇怪,比如跳跃或向上和向下滚动.
我一直在研究如何从表视图中删除数据在Core Data中的行.我在网上找不到任何可以帮助我处理代码的内容.我是Core Data的新手,所以我对它并不是很了解.
提前致谢
这是我的代码
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
guard let appDelegate = UIApplication.shared.delegate as? AppDelegate else { return}
let managedContext = appDelegate.persistentContainer.viewContext
let fetchRequest = NSFetchRequest<NSManagedObject>(entityName: "OfficialPT")
fetchRequest.sortDescriptors = [NSSortDescriptor(key:"createdAt",ascending:false)]
do {
AirForceDatabase = try managedContext.fetch(fetchRequest)
} catch let error as NSError {
print("Could not fetch. \(error), \(error.userInfo)")
}
}
func SideMenus ()
{
if revealViewController() != nil {
MenuButton.target = revealViewController()
MenuButton.action = #selector(SWRevealViewController.revealToggle(_:))
revealViewController().rearViewRevealWidth = 275
revealViewController().rightViewRevealWidth = 160
// profileButton.target = revealViewController()
// …Run Code Online (Sandbox Code Playgroud) import UIKit
class ViewController: UIViewController, UITableViewDataSource,UITableViewDelegate {
@IBOutlet weak var label: UILabel!
@IBOutlet weak var imageView: UIImageView!
@IBOutlet weak var tableView1: UITableView!
let element = ["Sports": #imageLiteral(resourceName: "ios"),"Grocery":#imageLiteral(resourceName: "ios"),"Cosmetics":#imageLiteral(resourceName: "ios")]
override func viewDidLoad() {
super.viewDidLoad()
tableView1.delegate = self
tableView1.dataSource = self
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { …Run Code Online (Sandbox Code Playgroud) 我有一个tableview,我想在每天的特定时间(用户输入一个选择器)清空它.以下是它主要使用的代码,但是让我们说用户在晚上7点打开应用程序,更新时间是晚上8点,数据不会被删除(这是正确的)但是当时间是在同一天晚上9点并且应用程序打开数据不会被删除(这是不正确的).我认为这与lastRefreshDate应用程序打开时更新的evreytime时间有关,必须等待24小时lastRefreshDate而不是等待userPickedHour.该应用程序应该像这样工作有一个设定的时间晚上7点.因此,应用程序应该在第二天晚上7点或晚上7点后删除数据,当用户打开应用程序时,如果用户在第二天晚上7点之前打开应用程序,则不应删除数据,
这是代码:
class RefreshManager: NSObject {
static let shared = RefreshManager()
private let defaults = UserDefaults.standard
private let defaultsKey = "lastRefresh"
private let calender = Calendar.current
func loadDataIfNeeded(completion: (Bool) -> Void) {
if isRefreshRequired() {
// load the data
defaults.set(Date(), forKey: defaultsKey)
print("xxxxxx")
completion(true)
} else {
print("yyyyyy")
completion(false)
}
}
private func isRefreshRequired(userPickedHour: Int = 16) -> Bool {
let SleepPickerdate = UserDefaults.standard.object(forKey: "SleepDate") as? Date
let userPickedHour = Calendar.current.component(.hour, from: (SleepPickerdate)!)
print(userPickedHour) …Run Code Online (Sandbox Code Playgroud) 我是iOS开发的新手,我通过使用childByAutoId()将一大块数据存储到firebase数据库,在此下面存储用户名,photoURL,textMessage和用户UID.我正在tableView Cells中检索这些数据.现在我想要的是当我点击其中一个帖子或tableView单元格时,我想打印由childByAutoId()函数生成的唯一ID.这该怎么做.
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let name = Auth.auth().currentUser?.displayName
let indexPath = tableView.indexPathForSelectedRow
let alertController = UIAlertController(title: "Trial", message: "You Selected "+name!, preferredStyle: .alert)
let defaultAction = UIAlertAction(title: "Close Alert", style: .default, handler: nil)
alertController.addAction(defaultAction)
present(alertController, animated: true, completion: nil)
}
Run Code Online (Sandbox Code Playgroud)
我正在使用此代码来捕获单元格上的点击.那么什么代码有助于在点击后获取该特定单元格的子ID?我想在日志中打印它.
这就是我的列表的样子.
我试图从TextView中获取一个字符串,并为TextView.text中的每个字符添加一个新行.
因此,如果TextView text ="hi there",我希望Table View看起来像这样:
H
一世
(空间)
Ť
H
Ë
[R
Ë
谢谢!
uitableview ×10
swift ×9
ios ×8
core-data ×1
delete-row ×1
dictionary ×1
networking ×1
reachability ×1
swift3 ×1
timer ×1
uilabel ×1
uitextview ×1
xcode ×1