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 的说法, 给用户一种 身临其境 的体 ...
随机推荐
- Android 项目Log日志输出优化
概述 Android开发过程中经常需要向控制台输出日志信息,有些人还在用Log.i(tag,msg)的形式或者system.out.println(msg)方式吗?本篇文章对日志信息输出进行优化,以达 ...
- spring源码下载链接
http://www.blogjava.net/zhyiwww/archive/2014/10/17/418809.html
- day21 02 包的进阶
day21 02 包的进阶 1._init_.py文件的操作---导入包 根据day21 01 包的初识,建立的glance包,直接import glance后通过“包点包..点方法”是不能执行所要的 ...
- lua排序算法
SEED = ; --随机序列 可任取 NUM = ; --排序规模 --随机序列 初始数据 function GenRnd( seed, n ) --生成随机数 data = {}; local r ...
- 【Codeforces 464A】No to Palindromes!
[链接] 我是链接,点我呀:) [题意] 题意 [题解] 因为原序列没有任何长度超过2的回文串. 所以,我们在改变的时候,只要时刻保证改变位置s[i]和s[i-1]以及s[i-2]都不相同就好. 因为 ...
- Leetcode 115.不同的子序列
不同的子序列 给定一个字符串 S 和一个字符串 T,计算在 S 的子序列中 T 出现的个数. 一个字符串的一个子序列是指,通过删除一些(也可以不删除)字符且不干扰剩余字符相对位置所组成的新字符串.(例 ...
- noip模拟赛 猜数字
题目描述 LYK在玩猜数字游戏. 总共有n个互不相同的正整数,LYK每次猜一段区间的最小值.形如[li,ri]这段区间的数字的最小值一定等于xi. 我们总能构造出一种方案使得LYK满意.直到…… LY ...
- sdibt 1251 进化树问题
/* 三个点的话 A--D--B | C dis(AD)=(AB+AC-BC)/2; 拓展到到n个点 每次去叶子节点,先去掉与A相连长度最小的. 将他们的长度加起来. */ #include<s ...
- [kuangbin带你飞]专题四 最短路练习 G MPI Maelstrom
#include<iostream> #include<cstring> #include<algorithm> #include<iomanip> # ...
- 玲珑杯 ACM Round #12
A =w= B 占坑 C 题意:有长度为n的序列A和长度为n的序列W,以及一个G,对于Ui,1<=Ui<=Wi,求Σgcd(Ai,Ui)=G的方案数,n<=1e3,Ai<=1e ...