创建一个笔尖时,我有两种类型可以创建,一个是WindowNib或一个是ViewNib.我看到不同的是,窗口笔尖有一个窗口和一个视图.
如何将视图笔尖加载到另一个窗口?我是否必须创建一个WindowController并添加一个窗口然后在窗口中加载nib?
我是开发可可应用程序的新手.我使用cocoa开发了一个小的UI应用程序.我想在屏幕上添加一些信息,目前显示应用程序名称和版本为1.00.任何人都可以帮助我如何在屏幕上添加一些信息,是否可以通过编程方式添加信息而不是硬编码?
任何帮助将不胜感激.
我刚刚开始深入研究iOS开发的世界.我也是XCode的新手.我使用默认的UIComponents构建了几个小测试应用程序,方法是将它们从Objects库中拖放到我的.xib文件中,并连接出口和操作,看看它是如何工作的.我想把它带到下一步并创建我自己的自定义绘制按钮.我有一个名为CustomButton的类,它扩展了UIButton,我可以通过编程方式将其添加到视图中,但我想知道如何将其拖放到nib文件上,这样我就可以在视觉上而不是以编程方式将其放置.我知道这是一个初学者的问题,但我整夜都在寻找一个如何做到这一点并没有成功的例子.任何帮助是极大的赞赏.
我在这个命名约定~iPad.xib中遇到的问题是iPad模拟器中的所有内容都正常加载.虽然我在设备上构建项目时只加载了iPhone Views.这让我发疯了.如果有人知道为什么这样做,我将不胜感激.谢谢
我创建UITabBarController了每个选项卡包含UINavigationController并设置了rootviewcontroller UINavigationController,所有这些都在界面构建器中完成.在viewDidLoad中,我尝试从视图中获取帧大小,但是当我引用视图时,它返回null.以前有没有人经历过这个.
所有IBoutlet都已正确连接.
我有一个常见的方法,导致出现"联系我们"(UIActionSheet)消息.因为我在多个类中使用相同的代码,我试图移动到它自己的类(我使用NSObject类类型).
问题是,如何让UIActionSheet出现在需要它的类的NIB中?
我在NSObject类中使用此代码:
UIActionSheet *msg = [[UIActionSheet alloc]
initWithTitle:@"Consultation Request"
delegate:self
cancelButtonTitle:@"Cancel"
destructiveButtonTitle:nil
otherButtonTitles:@"Email",@"Text",@"Office Phone", nil];
msg.actionSheetStyle = UIActionSheetStyleBlackOpaque;
[msg showInView:self.view];
Run Code Online (Sandbox Code Playgroud)
显然最后一行是错误的,因为"视图"是原始类的NIB.
我想用xib初始化一个视图.这是一个UIView.所以我有一个xib和一个UIView子类,下面粘贴了init代码(initWitFrame nibName).在创建视图时,我将xib名称从视图控制器提供给init代码.
SubclassUIView *view = [[SubclassUIView alloc]initWithFrame:self.view.bounds nibName:@"xibName"];
Run Code Online (Sandbox Code Playgroud)
我是在正确的轨道上吗?到目前为止,xib的内容不会加载视图.
顺便说一下,xib中的主视图被设置为我的UIView子类的类类型.
- (id)initWithFrame:(CGRect)frame nibName:(NSString*)nibName
{
self = [super initWithFrame:frame];
if (self)
{
[[NSBundle mainBundle] loadNibNamed:nibName owner:self options:nil];
[self addSubview:self.view];
}
return self;
}
Run Code Online (Sandbox Code Playgroud) 我按照一些教程在应用程序启动期间创建一个打开的门动画,但它正在调用
xib文件,我想调用storyboard,我没有足够的经验.这是我的代码
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
// Override point for customization after application launch.
self.viewController = [[[OpenDoorsViewController alloc] initWithNibName:@"OpenDoorsViewController" bundle:nil] autorelease];
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
return YES;
}
Run Code Online (Sandbox Code Playgroud) 我一直在尝试使用UIPageViewController在现在几天内显示3个不同的笔尖并且几乎让它工作.我仍然有一个奇怪的错误,我无法弄清楚.
基本上应用程序启动,我可以一个接一个地在3页之间滚动而没有任何问题,例如:
Page1-> Page2->第3页
然后回到开头:
Page3-> Page2->第1页.
没问题.问题是,如果我滚动,例如从Page3->第2页,然后再返回到第3页,第3页Dissappears当它放入到位.如果我滚动到第四页的位置,那么我得到Page3.这是与UIPageViewController相关的代码,nibs和UIPageViewController的委托方法:
- (void)viewDidLoad{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.pageViewController = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:nil];
self.pageViewController.delegate = self;
[[self.pageViewController view] setFrame:[[self view] bounds]];
indexTest = 0;
Page1 *p1 = [[Page1 alloc]initWithNibName:@"Page1" bundle:nil];
p1.view.tag = 1;
Page2 *p2 = [[Page2 alloc]initWithNibName:@"Page2" bundle:nil];
p2.view.tag = 2;
Page3 *p3 = [[Page3 alloc]initWithNibName:@"Page3" bundle:nil];
p3.view.tag = 3;
NSArray *arr = [[NSArray alloc] initWithObjects:p1,nil]; …Run Code Online (Sandbox Code Playgroud) 这是我想要做的:在nib文件中设计一个视图.使用Swift编写的类返回视图和nib所有者.在Swift中实例化nib的视图.崩溃的代码:
var myViewOwner: MyViewOwner?
NSBundle.mainBundle().loadNibNamed("MyView", owner: myViewOwner, options: nil) // crash
Run Code Online (Sandbox Code Playgroud)
......有错误:
[NSObject 0x7bfa0cc0 setValue:forUndefinedKey:]:此类与密钥myView不符合密钥值编码.
所以,我有:带有空白视图的nib文件,其中视图是类型的类型MyClass和nib所有者MyViewOwner.这两个类都是用Swift编写的.
我将只发布MyViewOwner类代码,因为MyView.swift只是一个类定义.
MyViewOwner.swift
class MyViewOwner {
@IBOutlet weak var myView: MyView
}
Run Code Online (Sandbox Code Playgroud)
上面引起的错误.
当然Swift对象不符合KVO,所以我试过:
class MyViewOwner: NSObject {
@IBOutlet var myView: MyView
}
Run Code Online (Sandbox Code Playgroud)
......和:
class MyViewOwner: NSObject {
@IBOutlet strong var myView: MyView = MyView() // we need to set something since it's 'strong'
}
Run Code Online (Sandbox Code Playgroud)
两者都导致错误.
@objc class MyViewOwner: NSObject {
@objc @IBOutlet strong var myView: MyView …Run Code Online (Sandbox Code Playgroud)