-(IBAction)clickButton:(UIButton )sender
{
}
我宁可不要你的分,也想提醒你一下。你不应痛恨苹果的证书收费,中国这种只愿意用免费的消费习惯也是他们所痛恨的吧。收费提高门槛对于开发者也有好处。
老版本的xcode有打包ipa的方法,但现在42+版本的貌似没有见到。
如果你是初学,暂时可以不考虑进行真机调试。如果就是想生成一个ipa装进你的越狱机得瑟下,考虑将你的代码给有开发者ID的朋友帮你生成下。
给这个button绑定方法,自己写一个IBACTION的方法,连接上这个按钮即可,
- (IBAction)buttonClick:(UIButton){
/ 你的代码 /
}
在XIB界面右键点这个button,将touch up inside一项与你写的方法连起来,当你点击这个按钮的时候,就能触发buttonClick了;
1打开xcode引导新建一个Project,我这边选这个模板
然后填写一些项目的基本命名和属性
第一个项目名,第二项类似于android中得包名,貌似是app唯一标识。
第四项,类前缀,默认是没有,写上后模板生成得几个类前默认带个这个前缀。
说下最后三个复选框。
第一个就是我们说的新特性之一,用storyboards管理布局文件。
第二个arc机制
第三个自动生成一个测试用例。
这次我全不选,不过我学的时候选了ARC,完全不用释放内存。这回是听了那几个朋友的建议,初学者要给自己较好的编码意识。
2创建完后我们来大致看下目录结构分析,然后应用是如何启动的
一般我们在看一个整体应用时,我们都会去了解这个应用到底是怎么起来的(Android比如简单的就是一个入口activity。当然在往前点可能说是Applicaton)
ios中,则是在用户点击应用后,会进入这个main函数。然后我们看了下这个函数唯一能让我们关联得就是NonoAppDelegate这个类
(我这边比较俗,既看一个应用启动流程时,我保证代码能把我整个应用窜起来,不考虑后台到底怎么怎么进程,loop啊,队列什么的,目前对我们来说太深奥了)。
好了,这个main之后能跳到我们的代理类了。
我们看下代理类中内容
[cpp] view plain copy
//
// NonoAppDelegateh
// TestOne
// Created by Nono on 12-4-25
// Copyright (c) 2012年 NonoWithLilith All rights reserved
//
#import <UIKit/UIKith>
@class NonoViewController;
@interface NonoAppDelegate : UIResponder <UIApplicationDelegate>
@property (strong, nonatomic) UIWindow window;
@property (strong, nonatomic) NonoViewController viewController;
@end
以上这是头文件。
[cpp] view plain copy
@synthesize window = _window;
@synthesize viewController = _viewController;
- (BOOL)application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionary )launchOptions
{
selfwindow = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
// Override point for customization after application launch
selfviewController = [[[NonoViewController alloc] initWithNibName:@"NonoViewController" bundle:nil] autorelease];
selfwindowrootViewController = selfviewController;
[selfwindow makeKeyAndVisible];
return YES;
}
实现文件我们就看部分。
该实现方法是应用启动完后,加载一个窗口,然后在窗口上添加各种View。
这边说个小注意点。
在main函数时,我们会看到两种书写:
第一种:
[cpp] view plain copy
int main(int argc, char argv[])
{
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, nil);
}
}
第二种:
[cpp] view plain copy
int main(int argc, char argv[])
{
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([NonoAppDelegate class]));
}
}
我们可以看到UIApplicationMain方法参数不一样。
对于这个,这哥们得博文写的比较明了了:《Main方法得讨论》
>
没明白,这个是用在什么地方的 是[短信、邮件、通讯录]这一方面的?点击button后会触发一个动作,在接收这个动作的方法里按照你的逻辑处理就可以了 。比如-(IBAction)click{ //处理你的逻辑 //1 显示本地路径 //2 根据路径进行判断加载什么}
用block
- (IBAction)ClickAction:(id)sender {
selfbtnBlock(sender);
}
-(UITableViewCell )tableView:(UITableView )tableView cellForRowAtIndexPath:(NSIndexPath )indexPath
{
cellbtnBlock = ^(UIButton btn)
{
这里可以取到tag =indexpath
};
}
在自定义UITableViewCell中创建了一个按钮。
想在点击该按钮时知道该按钮所在的cell在TableView中的行数。就是cell的 indexPathrow
两种方法都很好。
-(IBAction):(id)sender
{
NSLog(@"MyRow:%d",[selftable indexPathForCell:((TableViewCell)[[sender superview]superview])]row); //这个方便一点点,不用设置tag。
NSLog(@"MyRow:%d",((TableViewCell)[[sender superview]superview])tag);
//这个需要加载cell时设置tag不过也很方便。
}
-(UITableViewCell )tableView:(UITableView )tableView
cellForRowAtIndexPath:(NSIndexPath )indexPath
{
//删除cellcontentView中所有内容,避免以下建立新的重复
int i = [[cellcontentView subviews] count] - 1;
for(;i >= 0 ; i--)
{
[[[cellcontentView subviews] objectAtIndex:i] removeFromSuperview];
}
//添加button
UIButton but = [UIButton buttonWithType:UIButtonTypeCustom];
[but setBackgroundImage:[UIImage imageNamed:@"deletepng"] forState:UIControlStateNormal];
[but setFrame:CGRectMake(280, 10, 30, 30)];
[but setAlpha:08];
[but addTarget:self action:@selector(del:) forControlEvents:UIControlEventTouchUpInside];
[cellcontentView addSubview:but];
//设置Tag为cell 对应的indexPath row
for(id view in subviews)
{
if([view isKindOfClass:[UIButton class]])
{
[view setTag:[indexPath row]];
//[cellcontentView bringSubviewToFront:view];
}
}
}
//Button事件
-(void)del:(id)sender
{
for(UITableViewCell cell in visiblecells)
{
if(celltag == buttontag)
{
//buttontag就是对应的[indexPathrow
}
[squel[i][j] addTarget:self action:@selector(myButtonPressed:) forControlEvents:UIControlEventTouchUpInside];添加按钮点击的方法收写调用的方法
-(IBAction)myButtonPressed:(id)sender{
//your code
}
你想要传递什么参数都可以放在button里边,调用方法中的形参(id)sender就是点击的button对象,比如你传递一个整形参数i,你就可以设置buttontag=i;然后在响应方法里边取tag就可以了,希望能帮到你
以上就是关于Xcode 4.2 iOS程序如何给按钮等添加点击后的代码全部的内容,包括:Xcode 4.2 iOS程序如何给按钮等添加点击后的代码、关于XCODE的".xib"档内的一个小问。、ios中 有ABC这三个viewController,A中有textField还有个button用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)