当前位置:首页 » 文件管理 » ios上传数组

ios上传数组

发布时间: 2022-06-12 16:07:03

⑴ ios 可以传递数组吗


使用方法,需要等UIWebView中的页面加载完成之后去调用。我们在界面上拖放一个UIWebView控件。在Load中将googlemobile加载到这个控件中,代码如下:
1. - (void)viewDidLoad
2. {
3. [super viewDidLoad];
4. webview.backgroundColor = [UIColor clearColor];
5. webview.scalesPageToFit =YES;
6. webview.delegate =self;
7. NSURL *url =[[NSURL alloc] initWithString:@"http://www.google.com.hk/m?gl=CN&hl=zh_CN&source=ihp"];
8.
9. NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];
10. [webview loadRequest:request];
11. }
我们在webViewDidFinishLoad方法中就可以通过javascript操作界面元素了。
1、获取当前页面的url。
1. - (void)webViewDidFinishLoad:(UIWebView *)webView {
2. NSString *currentURL = [webView :@"document.location.href"];
3. }
2、获取页面title:
1. - (void)webViewDidFinishLoad:(UIWebView *)webView {
2. NSString *currentURL = [webView :@"document.location.href"];
3.
4. NSString *title = [webview :@"document.title"];
5. }
3、修改界面元素的值。
1. NSString *js_result = [webView :@"document.getElementsByName('q')[0].value='朱祁林';"];
4、表单提交:
1. NSString *js_result2 = [webView :@"document.forms[0].submit(); "];
这样就实现了在google搜索关键字:“朱祁林”的功能。
5、插入js代码
上面的功能我们可以封装到一个js函数中,将这个函数插入到页面上执行,代码如下:
1. [webView :@"var script = document.createElement('script');"
2. "script.type = 'text/javascript';"
3. "script.text = \"function myFunction() { "
4. "var field = document.getElementsByName('q')[0];"
5. "field.value='朱祁林';"
6. "document.forms[0].submit();"
7. "}\";"
8. "document.getElementsByTagName('head')[0].appendChild(script);"];
9.
10. [webView :@"myFunction();"];
看上面的代码:
a、首先通过js创建一个script的标签,type为'text/javascript'。
b、然后在这个标签中插入一段字符串,这段字符串就是一个函数:myFunction,这个函数实现google自动搜索关键字的功能。
c、然后使用执行myFunction函数。
演示:
第一步打开google mobile网站

第二步输入关键字

第三步搜素

总结:这篇文章主要是讲解了的用法,它的功能非常的强大,用起来非常简单,通过它我们可以很方便的操作uiwebview中的页面元素。

⑵ ios 怎么把固定的16进制数组传给蓝牙硬件

数据传输肯定是二进制的,所以把数组转成NSData类型,然后调用写入蓝牙的方法,将NSData传输过去就好了

⑶ 后台需要索引数组参数,iOS怎么传

不会iOS,不过你这种情况最常见的就是方法post 一个JSON字符串给php。。。
因为看你标签有php,就默认php是后台了,php使用如下方式接受
$params=file_get_contents('php://input');
$params=json_decode($params,true);

⑷ 在ios中怎么用nsuserdefaluts传数组

ios沙盒机制确保每个app只能在自己的沙盒内存取信息,所以你只能清除当前app的信息,而不能清除其他app的信息。清除NSUserDefault的数据,必须知道每一个你想要清除的数据的key,然后通过 [UserDefults removeObjectForKey:key]; 逐项进行清除。

⑸ ios微信分享image传byte数组怎么写

1. 这是最快的方法(但相当危险),以获得数组:
unsigned char *bytesArray = data.bytes;
NSUInteger lengthOfBytesArray = data.length;
试图让字节#100之前,你应该检查lengthOfBytesArray这样的:
if (lengthOfBytesArray > 100 + 1)
{
unsigned char byteWithOffset100 = bytesArray[100];
}
而另一位安全和更ObjC的样方式:
- (NSArray*) arrayOfBytesFromData:(NSData*) data
{
if (data.length > 0)
{
NSMutableArray *array = [NSMutableArray arrayWithCapacity:data.length];
NSUInteger i = 0;
for (i = 0; i < data.length; i++)
{
unsigned char byteFromArray = data.bytes[i];
[array addObject:[NSValue valueWithBytes:&byteFromArray
objCType:@encode(unsigned char)]];
}
return [NSArray arrayWithArray:array];
}
return nil;
}

2. 如果你只是想读他们,有一个真正:
unsigned char *bytes = [data bytes];
如果你要编辑的数据,还有关于NSData的才会这样。
// Make your array to hold the bytes
NSUInteger length = [data length];
unsigned char *bytes = malloc( length * sizeof(unsigned char) );
// Get the data
[data getBytes:bytes length:length];
注:请不要忘记-如果你复制数据,你也必须调用free(bytes)点;)

⑹ ios post请求 参数是数组格式 怎么发生请求

随着asihttprequest的停止更新,许多人都转向了AFNetworking、 MKNetworkKit.我也是其中一个。于是我从网上找了许多文章作参考,但是结果都是失败告终。研究了好久都搞不透,最后还是请人帮忙搞定了。经常从网上索取免费资料的一员,要有回报的思想,也为了让更多的人少走些弯路,所以下面是代码:(有错误可以指出)

首先:将AFNetworking、UIKit+AFNetworking 加入到工程

然后在要使用的地方

#import "AFHTTPRequestOperationManager.h"

#import "AFHTTPSessionManager.h"

AFHTTPRequestOperationManager的post有两个方法,一个是普通的post,另一个是可以上传图片的

1.上传图片:

AFHTTPRequestOperationManager *manager = [];

manager.responseSerializer.acceptableContentTypes = [NSSetsetWithObject:@"text/html"];

NSDictionary *parameters =@{@"参数1":@"value1",@"参数2":@"value2"、、、};

NSData *imageData = UIImageJPEGRepresentation([UIImage imageNamed:@"1.png"], 1.0);

[manager POST:@"替换成你要访问的地址"parameters::^(id<AFMultipartFormData> formData) {

[formData appendPartWithFileData :imageData name:@"1" fileName:@"1.png" mimeType:@"image/jpeg"];

} success:^(AFHTTPRequestOperation *operation,id responseObject) {

NSLog(@"Success: %@", responseObject);

} failure:^(AFHTTPRequestOperation *operation,NSError *error) {

NSLog(@"Error: %@", error);

}];

这个方法可以上传图片,如果不用上传图片,可以把这句去掉[formData appendPartWithFileData :imageDataname:@"1"fileName:@"1.png"mimeType:@"image/jpeg"]

2.普通的post

AFHTTPRequestOperationManager *manager = [];

manager.responseSerializer.acceptableContentTypes = [NSSetsetWithObject:@"text/html"];

NSDictionary *parameters = @{@"参数1":@"value1",@"参数2":@"value2"、、、};

[managerPOST:@"替换成你要访问的地址"parameters:parameters

success:^(AFHTTPRequestOperation *operation,id responseObject) {

NSLog(@"Success: %@", responseObject);

}failure:^(AFHTTPRequestOperation *operation,NSError *error) {

NSLog(@"Error: %@", error);

}];

⑺ ios 通知中心可以传递数组吗

1. 通知中心概述
通知中心实际上是在程序内部提供了消息广播的一种机制。通知中心不能在进程间进行通信。实际上就是一个二传手,把接收到的消息,根据内部的一个消息转发表,来将消息转发给需要的对象。通知中心是基于观察者模式的,它允许注册、删除观察者。
一个NSNotificationCenter可以有许多的通知消息NSNotification,对于每一个NSNotification可以有很多的观察者Observer来接收通知。
2. 通知中心两个重要的类
NSNotificationCenter:这是iOS中通知中心的灵魂,由该类实现了观察者模式,并给开发者提供了诸如注册、删除观察者的接口,我们可以通过一个单例来获得它的实例(注,一个程序内部只有一个NSNotificationCenter实例对象)。
NSNotification:这是消息携带的载体,通过它,可以把消息内容传递给观察者。其中:name对应消息名称标示。object一般是发送者本身、dictionary则是传递的消息内容。
3. 通知中心如何使用
通过下图,我们可以看出,通知中心的使用可以分为4个步骤。
这里需要额外提一点的是:发送消息不仅仅可以有用户发起,也可以是系统发起。
当我们注册了某个消息的观察者后,如果有了对应的消息,则观察者会收到相应的消息,并展开处理。这里需要注意的是,当使用完消息之后,不想在接收到消息,则需要把观察者移除,否则会出现错误。
注册通知:即要在什么地方接受消息
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector (mytest:) name:@" postData " object:nil];
参数介绍:
addObserver:观察者,即在什么地方接收通知;
selector:收到通知后调用何种方法,即回调函数;
name:通知的名字,也是通知的唯一标示,编译器就通过这个找到通知的。
发送通知:调用观察者处的方法。
[[NSNotificationCenter defaultCenter] postNotificationName:@" postData "object:searchFriendArray];

⑻ ios 怎么往数组的数组中添加数据

你那样定义后,不能直接使用,因为未对当前数组变量进行实例化,也就没有进行内存分配这里给你推荐两种方法。1、初始化时设置他的数组大小string[] myarr = new string[2];myarr[0] = "1";myarr[1]="第二个值";2、初始化时设置他的数组大小并赋值string[] myarr = new string[]{"1","2"};3、可以动态改变数组大小的数组List<string> listArr = new List<string>();listArr.add("添加的值");listArr.add("再添加一个值");listArr.add("OK");listArr.RemoveAt(1);//删除索引1的项....//该方法操作数组更加灵活。如果不需要动态操作数组的话,可以不使用该方法。string[] myarr = listArr.ToArray();//将List类型转成string[]类型的数组

热点内容
福建电信服务器ip地址 发布:2025-01-19 23:07:24 浏览:647
服务器怎么制作公告栏 发布:2025-01-19 23:06:23 浏览:873
英雄联盟皮肤源码 发布:2025-01-19 22:56:14 浏览:94
三星手机忘记解锁密码怎么办 发布:2025-01-19 22:45:43 浏览:291
Java为什么没有预编译命令 发布:2025-01-19 22:44:14 浏览:303
路由器上写的初始无密码什么意思 发布:2025-01-19 22:42:38 浏览:847
mysql配置主从数据库 发布:2025-01-19 22:35:33 浏览:730
4大数据库 发布:2025-01-19 22:34:35 浏览:975
win10用什么解压 发布:2025-01-19 22:27:15 浏览:799
反编译连接数据库 发布:2025-01-19 22:07:55 浏览:787