在Android中获取网页里表单中的数据具体实现代码如下,感兴趣的各位可以参考过下哈,希望对大家有所帮助
MainActivity如下:

复制代码 代码如下:
package cn.testjavascript;
import
java.util.StringTokenizer;
import android.os.Bundle;
import
android.webkit.WebView;
import android.app.Activity;
/**
* Demo描述:

* 在Android中获取网页里表单中的数据
*/
public class MainActivity extends Activity
{
private WebView mWebView;
private String date =null;
private
String email = null;
private String username = null;
private String sex
= null;
@Override
protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
setContentView(R.layout.main);

init();
}
private void init(){
mWebView=(WebView)
findViewById(R.id.webView);
initWebViewSettings();

mWebView.loadUrl("file:///android_asset/form.html");

//注意addJavascriptInterface方法中第二参数
//它表示我们的java对象javaClass的别名.

//这样Javascript就可以通过该别名来调用Android中的方法

//即Javascript代码中的:window.testform.send(date+"|"+email+"|"+name+"|"+sex);

//send是方法名
//testform是别名
mWebView.addJavascriptInterface(new
Object() {
public void send(String userInfo) {
StringTokenizer
userInfoStringTokenizer = new StringTokenizer(userInfo, "|");
date =
userInfoStringTokenizer.nextToken();
email =
userInfoStringTokenizer.nextToken();
username =
userInfoStringTokenizer.nextToken();
sex =
userInfoStringTokenizer.nextToken();

System.out.println("userInfoStringTokenizer="+userInfoStringTokenizer.toString());

System.out.println("date=" + date);
System.out.println("email=" +
email);
System.out.println("username=" + username);

System.out.println("sex=" + sex);
};
}, "testform");

}

private void initWebViewSettings(){

mWebView.setVerticalScrollBarEnabled(false);

mWebView.setHorizontalScrollBarEnabled(false);

mWebView.getSettings().setJavaScriptEnabled(true);

mWebView.getSettings().setSupportZoom(true);

mWebView.getSettings().setDomStorageEnabled(true);

mWebView.getSettings().setPluginsEnabled(true);
mWebView.requestFocus();

mWebView.getSettings().setUseWideViewPort(true);

mWebView.getSettings().setLoadWithOverviewMode(true);

mWebView.getSettings().setSupportZoom(true);

mWebView.getSettings().setBuiltInZoomControls(true);
}

}

main.xml如下:

复制代码 代码如下:
<RelativeLayout

xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"
android:layout_height="match_parent"

>
<WebView
android:id="@+id/webView"

android:layout_width="fill_parent"
android:layout_height="fill_parent"

android:layout_centerInParent="true"
/>
</RelativeLayout>

form.html如下:

复制代码 代码如下:
<body>
<form action=""
method="post">
时间:<br>
<select id="shijian" name="date">

<option value="2011">2011</option>
<option
value="2012">2012</option>
<option
value="2013">2013</option>
<option
value="2014">2014</option>
<option
value="2015">2015</option>
</select><br>
邮箱:

<input id="email" type="text" name="emailID" />
<br>
昵称:

<input id="name" type="text" name="username" />
<br>

性别:<br>
<input id="men" type="radio" name="sex"
value="men"/>男
<input id="women" type="radio" name="sex"
value="women"/>女
<br>
<input type="submit" value="注册"
onclick="f()"/>
<input type="button" value="取消" />

</form>
</body>
<script type="text/JavaScript"
language="javascript">
function f(){
var email =
document.getElementById('email').value;
var name =
document.getElementById('name').value;
var date =
document.getElementById('shijian').value;

if(document.getElementById('men').checked &&
!document.getElementById('women').checked){
var sex =
document.getElementById('men').value;
}else
if(!document.getElementById('men').checked &&
document.getElementById('women').checked){
var sex =
document.getElementById('women').value;
}

window.testform.send(date+"|"+email+"|"+name+"|"+sex);
}

</script>

Android中获取网页表单中的数据实现思路及代码的更多相关文章

  1. Android中获取网页表单中的数据

    MainActivity如下: package cn.testjavascript; import java.util.StringTokenizer; import android.os.Bundl ...

  2. Android中获取应用程序(包)的大小-----PackageManager的使用(二)

    通过第一部分<<Android中获取应用程序(包)的信息-----PackageManager的使用(一)>>的介绍,对PackageManager以及 AndroidMani ...

  3. android中获取root权限的方法以及原理(转)

    一. 概述 本文介绍了android中获取root权限的方法以及原理,让大家对android 玩家中常说的“越狱”有一个更深层次的认识. 二. Root 的介绍 1. Root 的目的 可以让我们拥有 ...

  4. URL转Drawable之 Android中获取网络图片的三种方法

    转载自: http://doinone.iteye.com/blog/1074283 Android中获取网络图片是一件耗时的操作,如果直接获取有可能会出现应用程序无响应(ANR:Applicatio ...

  5. android 中获取视频文件的缩略图(非原创)

    在android中获取视频文件的缩略图有三种方法: 1.从媒体库中查询 2. android 2.2以后使用ThumbnailUtils类获取 3.调用jni文件,实现MediaMetadataRet ...

  6. Android中获取正在运行的应用程序-----ActivityManager.RunningAppProcessInfo类详解

    今天继续讲解关于ActivityManager的使用,通过前面一节的学习,我们学会了如何利用ActivityManager获取系统里 正在运行的进程.本文要讲解的知识点是利用这些进程信息获取系统里正在 ...

  7. android中获取时间

    android中获取时间 1)通过calendar类获取 Calendar calendar = Calendar.getInstance();int moth = calendar.get(Cale ...

  8. Android中获取文件路径的方法总结及对照

    最近在写文件存贮,Android中获取文件路径的方法比较多,所以自己也很混乱.找了好几篇博客,发现了以下的路径归纳,记录一下,以备不时之需 Environment.getDataDirectory() ...

  9. Android中获取系统上安装的APP信息

    Version:0.9 StartHTML:-1 EndHTML:-1 StartFragment:00000099 EndFragment:00003259 Android中获取系统上安装的APP信 ...

随机推荐

  1. 减少iOS应用程序安装包大小

    安装包优化大小方法: <资源优化> 1.去除无用资源 通过几次项目的升级后,项目中会出现一些没有用到的图片.这些图片在我们导入到项目中后,之后项目升级过程后并没有再次用到. 那这些图片我们 ...

  2. 大数据笔记09:大数据之Hadoop的HDFS使用

    1. HDFS使用: HDFS内部中提供了Shell接口,所以我们可以以命令行的形式操作HDFS

  3. html表格标签与属性

    标记:  标 记  说 明 <Table> 表格标记 <Tr> 行标记 <Td> 单元格标记  <Th> 表头标记 <Table>标记属性: ...

  4. sql练习总结(一)

    最近在学sql,遇到了这么一道题: 写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的. 把所能想到的实现方法都做了一遍: 1.用 ...

  5. SVN—patch的应用

    svn 补丁的应用,在eclipse下有时候不能把全部变化加入,出现中文乱码问题.以下转载其他文章 原文地址:http://xiebh.iteye.com/blog/347458 1.create p ...

  6. SmartQQ二维码登陆接口分析

    SmartQQ是腾讯在Web上推出的一款单纯的聊天工具,pc端与移动端都可以访问,接下来具体的分析下登陆流程. 网站:http://w.qq.com/ 工具:这个随意能够看到http数据包就可以,浏览 ...

  7. ECSTORE 新建APP应用

    1.用命令新建app // ----- window平台 ----- 直接运行 " 站点根目录/app/base/cmd.bat " 出现命令行后输入 dev:new app my ...

  8. 解决IE10以下对象不支持“bind”属性或方法

    IE10一下的浏览器,如果在JS代码中用了bind函数,那么就会报“SCRIPT438: 对象不支持“bind”属性或方法” 因为浏览器没有提供这个参数的方法,所以我们就自己写一个bind,来让这个参 ...

  9. iTween_ValueTo函数

    ValueTo:返回一个插值在两件值之间的值供回调函数使用; 网上没找到例子,自己试了下,直接看代码就明白了. , 0, 0),// gameObject.transform.position为0.0 ...

  10. android开发

    从某种意义上讲,垃圾收集机制把程序员从“内存管理噩梦”中解放出来,而 Android 的进程生命周期管理机制把用户从“任务管理噩梦”中解放出来.我见过一些 Nokia S60 用户和 Windows ...