iOS-调用网页聊天、拨打电话
@property (nonatomic,strong) UIButton *but;
@property (nonatomic,strong) UIButton *but1;
@property (strong, nonatomic) UIView *subView;
//客服QQ
-(void)qqAction
{
self.but = [UIButton buttonWithType:UIButtonTypeCustom];
self.but.frame = self.view.bounds;
self.but.backgroundColor = [UIColor colorWithWhite:0.019 alpha:0.400];
[self.but addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:self.but];
self.but1 = [UIButton buttonWithType:UIButtonTypeCustom];
self.but1.frame = self.view.bounds;
self.but1.backgroundColor = [UIColor colorWithWhite:0.019 alpha:0.400];
[self.view addSubview:self.but1];
[self.tabBarController.tabBar addSubview:self.but1];
_subView = [[UIView alloc] initWithFrame:CGRectMake(20, screenHeight * 2, screenWidth - 40,200)];
_subView.alpha = 0;
_subView.layer.masksToBounds = YES;
_subView.layer.cornerRadius = 3.0f;
_subView.backgroundColor = [UIColor colorWithRed:255.0/255.0 green:255.0/255.0 blue:255.0/255.0 alpha:1.0];
[self.but addSubview:_subView];
[UIView animateWithDuration:0.001 animations:^{
CGRect frame = self.subView.frame;
frame.origin.y = screenHeight / 2-110;
self.subView.frame = frame;
self.subView.alpha = 1;
UIButton *closeBtn = [[UIButton alloc] init];
closeBtn.frame = CGRectMake(_subView.bounds.size.width - 30, 0, 30, 30);
[closeBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[closeBtn setImage:[UIImage imageNamed:@"btn_关闭_灰色__none"] forState:UIControlStateNormal];
[closeBtn addTarget:self action:@selector(closeView) forControlEvents:UIControlEventTouchUpInside];
[_subView addSubview:closeBtn];
UILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMake(14, 45, _subView.bounds.size.width, 30)];
label1.text = @"钱富宝客服QQ:2797353115";
label1.textAlignment = NSTextAlignmentLeft;
label1.textColor = [UIColor colorWithRed:96/256.0 green:103/256.0 blue:127/256.0 alpha:1.0f];
label1.font = [UIFont systemFontOfSize:16];
[_subView addSubview:label1];
UILabel *label2 = [[UILabel alloc] initWithFrame:CGRectMake(14, 62, _subView.bounds.size.width - 28, 60)];
label2.text = @"注:每周一至周五8:00到18:00正常上班,节假日休息。";
label2.numberOfLines = 2;
label2.textAlignment = NSTextAlignmentLeft;
label2.textColor = [UIColor colorWithRed:96/256.0 green:103/256.0 blue:127/256.0 alpha:1.0f];
label2.font = [UIFont systemFontOfSize:16];
[_subView addSubview:label2];
UIButton *requestionBtn = [[UIButton alloc] init];
requestionBtn.frame = CGRectMake(14, 150, _subView.bounds.size.width - 28, 43);
[requestionBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
[requestionBtn setTitle:@"立即咨询" forState:UIControlStateNormal];
[requestionBtn addTarget:self action:@selector(requestionClick) forControlEvents:UIControlEventTouchUpInside];
[requestionBtn setBackgroundColor:[UIColor colorWithRed:65/256.0 green:109/256.0 blue:218/256.0 alpha:1.0f]];
requestionBtn.layer.masksToBounds = YES;
requestionBtn.layer.cornerRadius = 3.0f;
[_subView addSubview:requestionBtn];
} completion:^(BOOL finished) {
}];
}
#pragma mark 在线客服网页跳转的实现部分
-(void)requestionClick{
UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectZero];
UILabel *qqLabel = [[UILabel alloc] init];
qqLabel.text = @"2797353115";
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"mqq://im/chat?chat_type=wpa&uin=%@&version=1&src_type=web",qqLabel.text]];
NSLog(@"----------%@-------",qqLabel.text);
NSURLRequest *request = [NSURLRequest requestWithURL:url];
webView.delegate = self;
[webView loadRequest:request];
[self.view addSubview:webView];
}
- (void)webView:(UIWebView *)webView didFailLoadWithError:(nullable NSError *)error
{
UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:nil message:@"未安装QQ程序" delegate:nil cancelButtonTitle:@"确定" otherButtonTitles: nil];
[alertView show];
}
#pramra mark 打电话
//电话
-(void)hotLineAlertView
{
self.but = [UIButton buttonWithType:UIButtonTypeCustom];
self.but.frame = self.view.bounds;
self.but.backgroundColor = [UIColor colorWithWhite:0.019 alpha:0.400];
[self.but addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:self.but];
self.but1 = [UIButton buttonWithType:UIButtonTypeCustom];
self.but1.frame = self.view.bounds;
self.but1.backgroundColor = [UIColor colorWithWhite:0.019 alpha:0.400];
[self.view addSubview:self.but1];
[self.tabBarController.tabBar addSubview:self.but1];
_subView = [[UIView alloc] initWithFrame:CGRectMake(20, screenHeight * 2, screenWidth - 40,200)];
_subView.alpha = 0;
_subView.layer.masksToBounds = YES;
_subView.layer.cornerRadius = 3.0f;
_subView.backgroundColor = [UIColor colorWithRed:255.0/255.0 green:255.0/255.0 blue:255.0/255.0 alpha:1.0];
[self.but addSubview:_subView];
[UIView animateWithDuration:0.001 animations:^{
CGRect frame = self.subView.frame;
frame.origin.y = screenHeight / 2-110;
self.subView.frame = frame;
self.subView.alpha = 1;
UIButton *closeBtn = [[UIButton alloc] init];
closeBtn.frame = CGRectMake(_subView.bounds.size.width - 30, 0, 30, 30);
[closeBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[closeBtn setImage:[UIImage imageNamed:@"btn_关闭_灰色__none"] forState:UIControlStateNormal];
[closeBtn addTarget:self action:@selector(closeView) forControlEvents:UIControlEventTouchUpInside];
[_subView addSubview:closeBtn];
UILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMake(14, 45, _subView.bounds.size.width, 30)];
label1.text = @"钱富宝客服热线:400-607-1818";
label1.textAlignment = NSTextAlignmentLeft;
label1.textColor = [UIColor colorWithRed:96/256.0 green:103/256.0 blue:127/256.0 alpha:1.0f];
label1.font = [UIFont systemFontOfSize:16];
[_subView addSubview:label1];
UILabel *label2 = [[UILabel alloc] initWithFrame:CGRectMake(14, 62, _subView.bounds.size.width - 28, 60)];
label2.text = @"注:每周一至周五8:00到18:00正常上班,节假日休息。";
label2.numberOfLines = 2;
label2.textAlignment = NSTextAlignmentLeft;
label2.textColor = [UIColor colorWithRed:96/256.0 green:103/256.0 blue:127/256.0 alpha:1.0f];
label2.font = [UIFont systemFontOfSize:16];
[_subView addSubview:label2];
UIButton *hotLineBtn = [[UIButton alloc] init];
hotLineBtn.frame = CGRectMake(14, 150, _subView.bounds.size.width - 28, 43);
[hotLineBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
[hotLineBtn setTitle:@"拨打热线" forState:UIControlStateNormal];
[hotLineBtn addTarget:self action:@selector(hotLineClick) forControlEvents:UIControlEventTouchUpInside];
[hotLineBtn setBackgroundColor:[UIColor colorWithRed:65/256.0 green:109/256.0 blue:218/256.0 alpha:1.0f]];
hotLineBtn.layer.masksToBounds = YES;
hotLineBtn.layer.cornerRadius = 3.0f;
[_subView addSubview:hotLineBtn];
} completion:^(BOOL finished) {
}];
}
-(void)closeView
{
[_but removeFromSuperview];
[_but1 removeFromSuperview];
}
- (void)btnClick:(UIButton *)but
{
[_but removeFromSuperview];
[_but1 removeFromSuperview];
}
//播打热线
-(void)hotLineClick
{
[_but removeFromSuperview];
[_but1 removeFromSuperview];
NSString *number = @"400-607-1818";
NSString *num = [[NSString alloc]initWithFormat:@"telprompt://%@",number];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:num]]; //拨号
}
iOS-调用网页聊天、拨打电话的更多相关文章
- ios app跳转拨打电话界面,调用拨打电话功能
DNLogFUNC //两种方法都可以用 //这种据说是可以上appstore NSURL *phoneURL = [NSURL URLWithString:[NSString stringWithF ...
- iOS 调用短信、电话、邮件、浏览器等
1.调用 自带mail[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mailto://admin@hzl ...
- Android 打开URL中的网页和拨打电话、发送短信功能
拨打电话需要的权限 <uses-permission android:name="android.permission.CALL_PHONE"/> 为了省事界面都写一起 ...
- 【原】iOS学习之三种拨打电话方式的比较
拨打电话小编从网上找到三种,在这里做一些总结和比较 1.基本使用 NSString *str = [[NSMutableString alloc] initWithFormat:@"tel: ...
- Flutter移动电商实战 --(14)首页_拨打电话操作
拨打电话的功能在app里也很常见,比如一般的外卖app都会有这个才做.其实Flutter本身是没给我们提供拨打电话的能力的,那我们如何来拨打电话那? 1.编写店长电话模块 这个小伙伴们一定轻车熟路了, ...
- uni-app拨打电话
调起通讯页面拨打电话 https://uniapp.dcloud.io/api/system/phone?id=makephonecall 点击按钮直接拨打电话 <template> &l ...
- ios调用本地拨打电话,发送短信
电话.短信是手机的基础功能,iOS中提供了接口,让我们调用.这篇文章简单的介绍一下iOS的打电话.发短信在程序中怎么调用. 1.打电话 [[UIApplication sharedApplicat ...
- iOS调用其它App,如拨打电话、发送邮件等。UIApplication:openURL:方法是实现这一目的的
在iOS开发中,经常需要调用其它App,如拨打电话.发送邮件等.UIApplication:openURL:方法是实现这一目的的最简单方法,该方法一般通过提供的url参数的模式来调用不同的App. 通 ...
- iOS拨打电话的三种方式
iOS拨打电话的三种方式 1,这种方法,拨打完电话回不到原来的应用,会停留在通讯录里,而且是直接拨打,不弹出提示 1 2 var string = "tel:" + "1 ...
- iOS 拨打电话三种方法
小弟查了很多地方的关于iOS程序拨打电话,大都不全,今天我总结了三种方法,各有不同,拿来给大家分享,希望给大家有所帮助1,这种方法,拨打完电话回不到原来的应用,会停留在通讯录里,而且是直接拨打,不弹出 ...
随机推荐
- TCP/UDP Socket调试工具提供了TCP Server,TCP Client,UDP Server,UDP Client,UDP Group 五种Socket调试方案。
一.TCP通信测试: 1) 创建TCP Server: 选中左方的TCP Server, 然后点击”创建”按钮,软件弹出监听端口输入框 输入监听端口后,即创建了一个在指定端口上进行监听的TCP S ...
- pyside pyqt QPushbuttion 无边框 stylesheet border:none
pyside pyqt QPushbuttion 无边框 stylesheet border:none 在 stylesheet 中添加 border:none 即可 效果是字体到边缘之间的间隙为0, ...
- idea 复制多条字符串
ctrl+c复制信息后可以通过ctrl+shift+v查看最近复制的字符串
- vue.js v-cloak指令
可以使用 v-cloak 指令设置样式,这些样式会在 Vue 实例编译结束时,从绑定的 HTML 元素上被移除. 当网络较慢,网页还在加载 Vue.js ,而导致 Vue 来不及渲染,这时页面就会显示 ...
- std::array,std::vector,基于范围的for循环
std::array除了有传统数组支持随机访问.效率高.存储大小固定等特点外,还支持迭代器访问.获取容量.获得原始指针等高级功能.而且它还不会退化成指针T *给开发人员造成困惑. for( 元素名变量 ...
- 041_查找 Linux 系统中的僵尸进程
#!/bin/bash#awk 判断 ps 命令输出的第 8 列为 Z 是僵尸进程,显示该进程的 PID 和进程命令 ps aux |awk '{if($8 == "Z"){pri ...
- [Luogu] 让我们异或吧
https://www.luogu.org/problemnew/show/P2420 异或满足 A ^ B = B ^ A A ^ A = 0 0 ^ A = A #include <cstd ...
- P4717 快速沃尔什变换FWT 模板题
#include <bits/stdc++.h> using namespace std; #define rep(i,a,n) for (int i=a;i<n;i++) #def ...
- pause函数
pause函数 调用该函数可以造成进程主动挂起,等待信号唤醒.调用该系统调用的进程将处于阻塞状态(主动放弃cpu) 直到有信号递达将其唤醒. int pause(void); 返回值:-1 并 ...
- JavaWeb_(Spring框架)Spring与JDBC
一.用Spring中的JdbcTemplate操作数据库 在MySQL中准备一个user表,表中增加一条假数据 用Spring中的JdbcTemplate操作数据库,在JdbcTemplate中实现增 ...