我是 iOS 编程新手,正在使用 XCode 学习故事板。我的问题是
我已经添加了我想要使用 IB 的视图,但我不希望它们在 IB 中使用 Ctrl+Drag 连接到我的 ViewController,而是以编程方式执行相同的操作。我见过建议在代码中创建视图实例并使用 addSubView() 添加它们(通过设置框架)的帖子。但我不想在代码中硬编码我的框架和尺寸,我更喜欢 IB。我只需要在需要时参考它们即可。
在 android 中,我们可以通过布局 XML 上的 getIdByName() 执行相同的操作。我正在寻找类似的东西。
谢谢
我正在尝试在 Xcode 6.3 中设计分组样式 tableview。我没有像下面附上的第二张图片那样得到覆盖桌子的矩形框。你能告诉我如何建立一个像第二个一样的屏幕吗?


我在选项卡栏控制器中有 2 个导航控制器,它们指向相同的视图。这在两个不同的选项卡中为我提供了该视图的 2 个不同实例。现在我希望视图根据其父导航控制器有不同的行为。
if id == "parent1"{
//do something
} else {
//do something else
}
Run Code Online (Sandbox Code Playgroud)
那么如何获取navigationControllerinViewController代码的标识符呢?
界面流程:
AppDelegate
-->
LoginViewController (不在故事板中)
-->
导航控制器(在情节提要中)
-->
PFQueryTableViewController (在故事板中)命名 "OrdersVC"
这是导航控制器OrdersVC:
这是我的AppDelegate:
var window: UIWindow?
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
// ...
// initial VC
let VC = LoginViewController()
window = UIWindow(frame: UIScreen.mainScreen().bounds)
window!.rootViewController = VC
window!.makeKeyAndVisible()
return true
}
Run Code Online (Sandbox Code Playgroud)
以上工作正常。然后,从LoginViewController,然后我尝试显示我的故事板的初始 VC,它是托管PFQueryTableViewController. 请注意,LoginViewController它不在故事板中。
let destVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("OrdersVC") as! UITableViewController
// will throw "unexpectedly found nil"
let navController = UINavigationController(rootViewController: destVC)
navController.pushViewController(destVC, …Run Code Online (Sandbox Code Playgroud) 我已经把多UITextFields到UIViewController故事板。
我正在使用IQKeyboardManagerUITextFields在它们聚焦时在键盘上滚动。
当我单击键盘工具栏中的下一个按钮时,另一个UITextField正在获得焦点,而当前一个失去焦点。
我怎样才能控制焦点的顺序的的UITextFieldS按键盘工具栏按钮?
我有两个TableViews,当我设计原件时,我使用情节提要中的原型单元来设计它,为了使其可重复使用,我尝试将其拉出.xib并加载它。cellID.xib然而,当它被加载时,它在运行时失去了所有的约束,一切都在彼此之上。
let cellIdentifier = "cellID"
override func viewDidLoad() {
super.viewDidLoad()
tableView.register(UINib(nibName: cellIdentifier, bundle: nil), forCellReuseIdentifier: cellIdentifier)
tableView.rowHeight = UITableViewAutomaticDimension
tableView.estimatedRowHeight = 300
}
Run Code Online (Sandbox Code Playgroud)
我在故事板中将一个 tableView 拖到我的控制器上。我将类型设置为分组,但我不知道是否可以在storyboard中设置tableView的节号。
我无法在静态单元格中看到 tableview 的内容。如果我这样做,它会报告错误。
这已经让我发疯了近 2 天了。我已经尝试了几乎所有的方法,但无法获得任何结果。每个解决展开的帖子似乎都没有专门解决在不同故事板中展开回 ViewController 的问题,更不用说以编程方式进行了。我究竟做错了什么?????
我有两个 ViewControllers驻留在不同的故事板中......
我想从我的放松SignupViewController位于我注册情节串连图板,以我的LoginViewController位于我的登录故事板。我想在用户成功注册后以编程方式执行展开,收到带有 OK 按钮的确认警报,然后单击 OK 按钮。
这是我想从 => 到放松的地方
这就是我尝试这样做的方式
所以我在我的LoginViewController.swift文件中创建了一个unwindToLoginViewController操作方法,就像这样......
并在我的SignupViewController.swift文件中创建对它的引用,就像这样......
随后,我按预期获得了参考...
并将标识符设置为相同,以便我可以在我的代码中引用它...
当我运行我的应用程序并成功注册用户时,我会显示一个带有 OK 按钮的确认警报。当用户单击 OK 按钮时,我想放松到我的LoginViewController,但什么也没发生......
有什么线索吗??????
我搜索了很多但没找到解决办法.任何人都可以帮助我找出如何将UIDatePicker初始值设置为空文本字段?
import UIKit
import Alamofire
import KVNProgress
class EditProfileVC: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate
{
@IBOutlet var datePickerView: UIView!
@IBOutlet var datePicker: UIDatePicker!
@IBOutlet var birthdayText: UnderLineTextField!
@IBOutlet var bioText: UnderLineTextField!
@IBOutlet var scrollView: UIScrollView!
var imagePicker = UIImagePickerController()
var photoFlag = -1
let activityView = UIActivityIndicatorView(activityIndicatorStyle: .whiteLarge)
var singleTonInstance = SingleTon.sharedDataContainer
var email = ""
var token = ""
override func viewDidLoad()
{
super.viewDidLoad()
self.birthdayText.text = ""
if #available(iOS 11.0, *)
{
navigationController?.navigationBar.prefersLargeTitles = false
}
else
{
// Fallback on …Run Code Online (Sandbox Code Playgroud) 还有一个关于 Xcode 中通用命令失败的问题,但我想特别询问“LinkStoryboards”命令。从我的项目中删除故事板后发生此构建错误,并且没有任何清理或重新启动 Xcode 的帮助。
uistoryboard ×10
ios ×9
swift ×4
uitableview ×3
swift2 ×2
xcode ×2
storyboard ×1
swift3 ×1
uidatepicker ×1
xcode8 ×1
xib ×1