2.android
ImageButton action_btn = (ImageButton) findViewById(R.id.action_btn);
action_btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//数据校验//暂StringEx.isNull(mHouselist_houseid_view.getText().toString())||
if(isOperateAdd){
if(
StringEx.isNull(mDeptcode_view.getText().toString())
||StringEx.isNull(mFamilyorder_view.getText().toString())
||StringEx.isNull(mPname_view.getText().toString())
||StringEx.isNull(mIdnumber_view.getText().toString())
||StringEx.isNull(mMobile_view.getText().toString())){
Toast.makeText(EditPersonActivity.this,
"请输入完整信息", Toast.LENGTH_SHORT)
.show(); return;
}
}
else{
if(StringEx.isNull(mPname_view.getText().toString())
||StringEx.isNull(mIdnumber_view.getText().toString())
||StringEx.isNull(mMobile_view.getText().toString())){
Toast.makeText(EditPersonActivity.this,
"请输入完整信息", Toast.LENGTH_SHORT)
.show();
return;
}
}
//字符限制--身份证号
if(!StringEx.isNull(mIdnumber_view.getText().toString())){
try {
String a = IDCardAndMobile.IDCardValidate(mIdnumber_view.getText().toString());
if(("").equals(a)){
mIdnumber_view.setText(mIdnumber_view.getText().toString());
}else{
Toast.makeText(EditPersonActivity.this,
"身份证号输入错误", Toast.LENGTH_SHORT)
.show();
mIdnumber_view.setText("");
return;
}
}catch (ParseException e){
e.printStackTrace();
}
}
//字符限制--手机号
if(!StringEx.isNull(mMobile_view.getText().toString())){
try {
boolean a = IDCardAndMobile.isMobileNO(mMobile_view.getText().toString());
if(a){
mMobile_view.setText(mMobile_view.getText().toString());
}else{
Toast.makeText(EditPersonActivity.this,
"手机号码输入错误", Toast.LENGTH_SHORT)
.show();
mMobile_view.setText("");
return;
}
}catch (Exception e){
e.printStackTrace();
}
}
if(mBitmap==null){
Toast.makeText(EditPersonActivity.this,
"请点击照相", Toast.LENGTH_SHORT)
.show();
}else{
compressImageFile = Tools.compressImage(mBitmap);
new Thread(new Runnable() {
@Override
public void run() {
try { jsonObject = new JSONObject();
jsonObject.put("singlefamily", mSinglefamily_view.getText());
jsonObject.put("houseid", mHouselist_houseid_view.getText());
jsonObject.put("familyorder", mFamilyorder_view.getText());
jsonObject.put("pname", mPname_view.getText());
jsonObject.put("relation", mRelation_view.getText());
jsonObject.put("gender", mGender_view.getText());
jsonObject.put("idnumber", mIdnumber_view.getText());
jsonObject.put("mobile", mMobile_view.getText());
jsonObject.put("persontype", mPersontype_view.getText());
jsonObject.put("religion", mReligion_view.getText());
jsonObject.put("maritalstatus", mMaritalstatus_view.getText());
jsonObject.put("military", mMilitary_view.getText());
jsonObject.put("education", mEducation_view.getText());
jsonObject.put("registertype", mRegistertype_view.getText());
jsonObject.put("remark", mRemark_view.getText()); String res;
Intent intent = new Intent(); if(isOperateAdd){
jsonObject.put("deptcode", mDeptcode_view.getText());
res = HttpClientUtil.getStringFromServer(Constants.SERVER_URL+"/personHouseHolder/addHouseHolderBasic_App.jspx", jsonObject, compressImageFile);
}
else {
jsonObject.put("personid", mPersonid);
res = HttpClientUtil.getStringFromServer(Constants.SERVER_URL+"/personHouseHolder/updateHouseHolderBasic_App.jspx", jsonObject, compressImageFile);
} intent.putExtra("result", res);
setResult(RESULT_OK, intent);
finish();
} catch (JSONException e) {
e.printStackTrace();
} catch (IOException e){ }
}
}).start();
}
}
});
2.android的更多相关文章
- 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...
- 配置android sdk 环境
1:下载adnroid sdk安装包 官方下载地址无法打开,没有vpn,使用下面这个地址下载,地址:http://www.android-studio.org/
- Android SwipeRefreshLayout 下拉刷新——Hi_博客 Android App 开发笔记
以前写下拉刷新 感觉好费劲,要判断ListView是否滚到顶部,还要加载头布局,还要控制 头布局的状态,等等一大堆.感觉麻烦死了.今天学习了SwipeRefreshLayout 的用法,来分享一下,有 ...
- Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记
以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...
- Android请求网络共通类——Hi_博客 Android App 开发笔记
今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...
- 【原】Android热更新开源项目Tinker源码解析系列之一:Dex热更新
[原]Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Tinker是微信的第一个开源项目,主要用于安卓应用bug的热修复和功能的迭代. Tinker github地址:http ...
- 【原】Android热更新开源项目Tinker源码解析系列之二:资源文件热更新
上一篇文章介绍了Dex文件的热更新流程,本文将会分析Tinker中对资源文件的热更新流程. 同Dex,资源文件的热更新同样包括三个部分:资源补丁生成,资源补丁合成及资源补丁加载. 本系列将从以下三个方 ...
- Android Studio 多个编译环境配置 多渠道打包 APK输出配置
看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...
- JS调用Android、Ios原生控件
在上一篇博客中已经和大家聊了,关于JS与Android.Ios原生控件之间相互通信的详细代码实现,今天我们一起聊一下JS调用Android.Ios通信的相同点和不同点,以便帮助我们在进行混合式开发时, ...
- Android UI体验之全屏沉浸式透明状态栏效果
前言: Android 4.4之后谷歌提供了沉浸式全屏体验, 在沉浸式全屏模式下, 状态栏. 虚拟按键动态隐藏, 应用可以使用完整的屏幕空间, 按照 Google 的说法, 给用户一种 身临其境 的体 ...
随机推荐
- 「 HDU P3336 」 Count the string
题目大意 给出一个长度为 $n$ 的字符串 $s$ 要求你求出 $s$ 的每一个前缀在 $s$ 中出现的次数之和.$n\le 200000$. 解题思路 暴力的对每一个前缀进行一次匹配,求出出现次数后 ...
- restful风格url Get请求查询所有和根据id查询的合并成一个controller
restful风格url Get请求查询所有和根据id查询的合并成一个controller的方法 原代码 // 127.0.0.1:8080/dep/s @ApiOperation(value=&qu ...
- 脚本开头,python预编译,控制台输入输出,for,while循环,分支判断,break,continue
3. name = input("name:")与2.x中raw_input一回事, 注意接收的变量全部默认为字符串类型. 从控制台接收用户输入,而密文输入import getpa ...
- Docker学习总结(17)——学会使用Dockerfile
Docker.Dockerfile.Docker镜像.容器这些都是什么鸟? 老生常谈,再再再--普及一下: Docker: 最早是dotCloud公司出品的一套容器管理工具,但后来Docker慢慢火起 ...
- BNUOJ 26224 Covered Walkway
Covered Walkway Time Limit: 10000ms Memory Limit: 131072KB This problem will be judged on HDU. Origi ...
- mysql执行show processlist unauthenticated user 解决方法
一台unibilling机器前几天突然负载变重. 在top中发现cpu被大量占用. agi程序运行的很慢,并出现僵尸进程. 其实当时只有50个左右的并发呼叫. 远远达不到正常水准. 重新启动机器问题也 ...
- Codeforces Round #249 (Div. 2) 总结
D.E还是很难的.....C不想多说什么... A:提意:给出每一组人的个数,以及一次车载容量,求出最少需要多少次才能载走所有的人. water: http://codeforces.com/cont ...
- noip模拟赛 立方数2
题目描述LYK定义了一个数叫“立方数”,若一个数可以被写作是一个正整数的3次方,则这个数就是立方数,例如1,8,27就是最小的3个立方数.LYK还定义了一个数叫“立方差数”,若一个数可以被写作是两个立 ...
- poj 2404 中国邮递员问题 欧拉回路判定+状压dp
/* 状压dp 邮递员问题:求经过任意点出发经过每一条边一次并回到原点. 解法:1.如果是欧拉回路那么就是所有的边的总和. 2.一般的解法,找出所有的奇度顶点,任意两个顶点匹配,即最小完美匹配,可用状 ...
- node.js 发布订阅模式
//导入内置模块 let EventEmitter = require('events'); let util=require('util'); //Man继承EventEmitter util.in ...