两个View之间互传数据

wifi下零流量互传文件 自己做了一个wifi下互传文件的东西,主要功能类似茄子快传。主要原理是一台手机开wifi热点,另外一台手机连接上,然后获取ip,接着进行socket通信。因为同一时刻wifi模块只能进行发送数据或者接收数据,所以写成两个模块,不知道可不可以通过快速切换达到既可以发送又可以接受的程度,但是根据这种连接wifi的速度难度应该很大。 下面的代码实现的只是一段信息的传输,wifi热点问题上个文章已经解决 阅读详情

1、利用delegate实现

View 1

//  ViewController.h

#import <UIKit/UIKit.h>
#import "AnotherViewController.h"

@interface ViewController : UIViewController<SendMessageDelegate>


@end

//  ViewController.m

#import "ViewController.h"
#import "AnotherViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
        
    UIButton * btn = [[UIButton alloc] init];
    [btn setFrame:CGRectMake(100.0, 100.0, 100.0, 30.0)];
    [btn setBackgroundColor:[UIColor blackColor]];
    [btn setTitle:@"View 1" forState:UIControlStateNormal];
    [btn addTarget:self action:@selector(showAnotherView) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:btn];
	// Do any additional setup after loading the view, typically from a nib.
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (void) showAnotherView
{
    AnotherViewController * anotherViewController = [[AnotherViewController alloc] init];
    anotherViewController.str = @"Hello";
    anotherViewController.myDelegate = self;
    [self presentViewController:anotherViewController animated:YES completion:^{
        NSLog(@"View 2 present", nil);
    }];
}

- (void) receiveMessage:(NSString *)msg
{
    NSLog(msg, nil);
}
@end


View 2

//  AnotherViewController.h

#import <UIKit/UIKit.h>

@protocol SendMessageDelegate <NSObject>

- (void) receiveMessage:(NSString *)msg;

@end

@interface AnotherViewController : UIViewController{

    id<SendMessageDelegate> myDelegate;
    
    NSString * str;
    
}

@property (nonatomic, assign) id<SendMessageDelegate> myDelegate;

@property (nonatomic, assign) NSString * str;
@end

//  AnotherViewController.m

#import "AnotherViewController.h"

@interface AnotherViewController ()

@end

@implementation AnotherViewController

@synthesize myDelegate;
@synthesize str;

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    [self.view setBackgroundColor:[UIColor whiteColor]];
    
    NSLog(str,nil);
    
    UIButton * btn = [[UIButton alloc] init];
    [btn setFrame:CGRectMake(100.0, 200.0, 100.0, 30.0)];
    [btn setBackgroundColor:[UIColor blackColor]];
    [btn setTitle:@"View 2" forState:UIControlStateNormal];
    [btn addTarget:self action:@selector(sendMsg) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:btn];
	
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (void) sendMsg
{
    if(myDelegate != nil)
    {
        [myDelegate receiveMessage:@"World"];
    }
    [self dismissViewControllerAnimated:YES completion:^{
        NSLog(@"View 2 dimiss", nil);
    }];
}

@end


2、利用NSNotification Center实现

http://mobile.51cto.com/iphone-284733.htm

手机通过蓝牙连接Matlab-数据互传 手机通过蓝牙连接Matlab-数据互传 测试使用的是手机端蓝牙串口模式与电脑端Matlab连接。 使用串口可实现数据透传,方便自行设计更上层的协议。 Matlab端底层使用了BlueCove-2.1.1-SNAPSHOT.jar这个jar包,作为整个socket连接的client端,主动去连接手机蓝牙;手机端,配置Android开发环境,编写了整个socket连接的server端,等待电脑端连接。... 阅读详情

相关推荐

Activity与Fragment互传数据

Activity与Fragment 首先需要明确的是,Activity与Fragment是多对多关系。一个Activity中可以有多个Fragment,一个Fragment也可以存在于多个Activity中。 Activity向Fragment传递数据 跟Activity之间的互传数据一样需要通过Bundle对象作为载体进行传递。 Fragment可以通过有参构造函数的参数接收Activity传来的数据。 public AFragment(String s) { Bundle bundle =

Kiefer_lin的博客 3964

view间传值的方法总结

1、利用NSUserDefaults来传值,这种方法只限于传少量数据的情形: 比如你要传一个float的值,在需要传的时候用[[NSUserDefaults standardUserDefaults] setFloat:float forKey::@"float"]接收值的时候用[[NSUserDefaults standardUserDefaults] floatForKey:@"float"...

weixin_34326558的博客 290

activity与activity利用接口相互传递数据

activity与activity利用接口相互传递数据,超简单

全局变量、常量、共享数据、跨webview传参的综述

很多编程语言都有全局变量,但js语言没有。 HTML5+虽然也可以扩展类似plus.globle,但权衡后我们发现,新增类似的方案,不会对便利性有很大的提升,但对App的性能有负面影响,所以我们还是没有提供全局变量,但在本文中详述其他共享数据的方法。 共享数据有几种方法。 localStorage localStorage是HTML5标准,可跨webview使用。 是持久化存

leeandmins的博客 1965

两个程序间消息的传递

实现一个程序发送消息,另一个程序接收消息,注意一定要压缩包里面的test2运行之后,test才能获得test2对话框的句柄,否则你会以为这些代码实现不了你想要的功能

视觉SLAM的前段后端最详细的梳理(硕士入门知识框架更新)

文章目录视觉SLAM的组成结构视觉里程计(VO)-特征点法 -构建稀疏点云地图-直接法 -构建稠密或半稠密的地图 --需要使用 RGB-D 传感器视觉里程计--总结:SLAM 后端研究滤波器法非线性优化后端方式的差异(有五种优化方式):单目视觉里程计的初始化:运动估计:半直接法运动估计的优化方案:关于解决累计误差的一些方法:关键帧的建图及后端优化:特征的深度估计:图优化的后端研究:视觉与IMU融合的分类:视觉与IMU的融合的优势:存在的问题:优秀的开源: 视觉SLAM的组成结构 视觉里程计(VO) -特

DC 6811

WebView详情界面的跳转及两种传值方式

WebView界面传递可以传入链接,也可以传入对象,在传入对象或集合时我们必须在实体类中实现implenments Serializable*第一种方式:对象的传递方式Intent intent = new Intent(MainActivity.this,DetailsActivity.class); intent.putExtra("newsDataBean", newsDataList.get

zhanghaoqi97的博客 1778

路径规划:D*Lite寻路算法详解

D*Lite详解目录

mkr67n的博客 2万+

两个Activity之间互传数据

如何实现activityA传递数据给activityB,然后activityB再传回参数给activityA呢? (1)启动Intent时,不使用startActivity(intent),使用startActivityForResult(intent,requestcode),其中requestcode为返回结果码 Intent intent = new Intent(Main.this,O

belleliang的专栏 1594

从PSDK到ROS节点:实战GPS数据发布与CMake配置

本文详细介绍了如何从大疆PSDK获取GPS数据并封装为ROS节点的实战过程,包括PSDK编译、GPS数据订阅、ROS节点实现及CMake配置优化。通过具体代码示例和调试技巧,帮助开发者快速实现无人机传感器数据与ROS系统的集成,提升开发效率。

weixin_30843605的博客 457

2 利用ITK实现多帧Dicom读取,VTK实现数据显示

vtk中也有dicom读写类,但是只能完成单帧DICOM数据读取,这对于实际应用是非常不利的。而ITK可以实现dicom多帧读取,通常情况ITK与VTK也会结合使用(ITK处理,VTK显示),所以就一起学习下吧!

buerbuhuitou的博客 1564

MVC中Controller与View之间数据互传

转自:http://blog.youkuaiyun.com/sknice/article/details/42323791 在ASP.NET MVC中,经常会在Controller与View之间传递数据,因此,熟练、灵活的掌握这两层之间的数据传递方法就非常重要。本文从两个方面进行探讨: 一、Controller向View传递数据 1、使用ViewData传递数据 在Controller中定义如下: ...

weixin_30455023的博客 192

飞牛fnNAS个人小账本导入微信账单

本文介绍了将微信支付账单导入ezBookkeeping个人记账系统的详细方法。首先通过微信申请导出账单文件,接收后需进行Excel预处理:删除前导行、添加账户和分类列、整理金额格式等。在ezBookkeeping中需预先设置"微信"分类和账户。导入时需注意列映射关系,包括交易时间、账户名称等关键字段的对应设置。文章还提到处理交易标签、格式转换等细节问题,并建议避免使用"修改余额"功能。该方法同样适用于支付宝账单导入,解决了直接导入可能出现的格式不兼容问题。

dgnankai的专栏 482

C# MVC中Controller与View之间数据互传

一、Controller向View传递数据 1、使用ViewData传递数据 在Controller中定义如下: ViewData[“Message_ViewData”] = “ Hello ViewData!”; 在View中读取Controller中定义的ViewData数据,代码如下: @Html.Encode(ViewData["Message_ViewData"]) ...

qq_42717786的博客 4569

【华为OD机试真题】2、在字符串中找出连续最长的数字串含+-号 | 机试真题+思路参考+代码解析(C++、Java、Py)

题目描述 >请在一个字符串中找出连续最长的数字串,并返回这个数字串。 如果存在长度相同的连续数字串,返回最后一个。 如果没有符合条件的字符串,返回空字符串””。   注意: 数字串可以由数字”0-9″、小数点”.”、正负号”±”组成,长度包括组成数字串的所有符号。 “.”、“±”仅能出现一次,”.”的两边必须是数字,”±”仅能出现在开头且其后必须要有数字。 长度不定,可能含有空格

KJ.JK 6271

【Go语言实战】(2) Gin+Vue 电子商城

618来!!不用纠结去哪里剁手了!直接自己安排一个商场不香吗??

面向生活编程 4827

andriod之俩个Activity之间互传数据

String desc=String.format("收到返回消息:\n应答时间为%s\n应答内容为%s",response_time,response_content);String desc=String.format("收到请求消息:\n请求时间为%s\n请求内容为%s",request_time,request_content);//这个就是回调方法,就是假设我们在respones那边回来,就是回调这里。//把返回消息的详情显示在文本视图上面。//这里传递的是文本信息。//这里传递的是时间。

种一棵树最好的时间是十年前,其次就是现在 766

OSG三维渲染引擎编程学习之一百:“第十一章:OSG粒子” 之 “11.1 粒子的主要模块”

OSG;三维渲染引擎编程学习;第十一章:OSG粒子;11.1 粒子的主要模块

LuckyHanMo的博客 796

人品测试器(Activity之间互传数据)

下面这个小程序是为了演示Activity之间怎么互传数据的,主要是intent里面的putExtra函数。基本数据的传输非常简单。 package com.example.mytest; import android.net.wifi.WifiManager; import android.os.Bundle; import android.app.Activity; import andro

湛江下暴雨 977

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Fragment之间的数据互传

public class LeftFragment extends Fragment { String[] menus = new String[]{"Android", "IOS", "WP"}; private OnClickItem onClickItem; public LeftFragment() { // Required empty public

The blog of 优快云 in 杨天福 1920

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

uni-app和web-view页面相互传参

本文主要讲解了如何在uniapp和webview之间相互传递复杂数据。

SJJ980724的博客 1万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Android中Activity之间访问互传参数

public class MainActivity extends Activity { private static final int OTHER = 1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentV

Fine。晨曦~-[清晨] の第一缕阳光 4104

Controller与View之间的数据传递

1)Controller向View传递数据ViewData["message"] = "Hello";//使用ViewData传递数据ViewBag.Time = DateTime.Now;//ViewBag传递数据TempData["mes"] = "text";//使用TempData传递数据//使用静态字段定义变量public static string str;//全局的str = "12...

weixin_30621959的博客 181

如何在两个ViewController之间传递数据

参考: http://blog.sina.com.cn/s/blog_4431c7610100vgds.html http://blog.163.com/zhe8stianshi@126/blog/static/17176291920117233111605/   一般方法 1)采用代理模式 子viewcontroller设计 代理协议,定义协议接口,父viewcontroller 实现

lianbaixue的专栏 1万+
上一篇: C#设置IE代理
NoNeil
博客等级 码龄15年 108粉丝 50原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值