android onclick执行顺序,错误“无法执行android:onClick的方法”
我想通过sql制作登录按钮。当我运行该应用时,我遇到了一个onclick错误:
Process: com.example.mosab.hostlent, PID: 31057
java.lang.IllegalStateException: Could not execute method for android:onClick
at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:293)
at android.view.View.performClick(View.java:5609)
at android.view.View$PerformClick.run(View.java:22263)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:288)
at android.view.View.performClick(View.java:5609)
at android.view.View$PerformClick.run(View.java:22263)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.text.Editable android.widget.EditText.getText()' on a null object reference
at com.example.mosab.hostlent.login.loginon(login.java:92)
at java.lang.reflect.Method.invoke(Native Method)
at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:288)
at android.view.View.performClick(View.java:5609)
at android.view.View$PerformClick.run(View.java:22263)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)这是我的onclick代码:
public void loginon(View v) {
String Email = email.getText().toString().trim();
String Password = password.getText().toString().trim();
String type = "login";
worker worker = new worker(this);
worker.execute(type,Email,Password);
}这是我的xml文件:
android:id="@+id/login"
android:layout_width="205dp"
android:layout_height="50dp"
android:layout_gravity="center"
android:adjustViewBounds="true"
android:background="@color/hostlent"
android:baselineAlignBottom="false"
android:contextClickable="false"
android:cropToPadding="false"
android:keepScreenOn="false"
android:nestedScrollingEnabled="false"
android:onClick="loginon"
android:saveEnabled="false"
android:scaleType="fitCenter"
app:srcCompat="@drawable/login"
tools:layout_editor_absoluteX="86dp"
tools:layout_editor_absoluteY="332dp" />我的课被onclick代码调用:
public class worker extends AsyncTask {
Context context ;
AlertDialog alertDialog;
worker (Context context){
Context ctx;
}
@Override
protected String doInBackground(String... params) {
String type = params[0];
String login_url = "http://192.168.1.239:8080/login.php";
if (type.equals("login")){
try {
String email = params[1];
String password = params[2];
URL url = new URL(login_url);
HttpsURLConnection httpsURLConnection = (HttpsURLConnection)url.openConnection();
httpsURLConnection.setRequestMethod("post");
httpsURLConnection.setDoOutput(true);
httpsURLConnection.setDoInput(true);
OutputStream outputStream = httpsURLConnection.getOutputStream();
BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(outputStream,"UTF-8"));
String post_data = URLEncoder.encode("email","UTF-8")+"="+URLEncoder.encode(email,"UTF-8")+"&"+URLEncoder.encode(password,"UTF-8");
bufferedWriter.write(post_data);
bufferedWriter.flush();
bufferedWriter.close();
outputStream.close();
InputStream inputStream = httpsURLConnection.getInputStream();
BufferedReader bufferedReader = new BufferedReader( new InputStreamReader(inputStream,"iso-8859-1"));
String result="";
String line="";
while ((line=bufferedReader.readLine())!=null){
result += line;
}
bufferedReader.close();
inputStream.close();
httpsURLConnection.disconnect();
return result;
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
return null;
}
@Override
protected void onPreExecute() {
alertDialog=new AlertDialog.Builder(context).create();
alertDialog.setTitle("login status");
}
@Override
protected void onPostExecute(String result) {
alertDialog.setMessage(result);
alertDialog.show();
}
@Override
protected void onProgressUpdate(Void... values) {
super.onProgressUpdate(values);
}
}我将这些代码添加到清单文件中:
"你能帮我了解哪些是我的错误?
android onclick执行顺序,错误“无法执行android:onClick的方法”相关推荐
- mysql 执行顺序 SQL语句执行顺序分析
最近在做一个数据库的大作业,算是复习了下MySql里面比较复杂的一些语句的用法,如Left Join之类的.在这里就不对具体语法进行记录了,希望能在以后经常用到,而不是隔好长时间用一次.在这里就记录下 ...
- Mingw下g++编译执行顺序错误
今天写一个简单的线性表时,用Mingw中的g++编译.调试.运行时发现一个奇怪的现象:程序的执行顺序与实际编写顺序不一致. 编译环境:代码编写 win7下 editplus + Mingw 4. ...
- oracle select执行顺序,oracle select执行顺序的详解
oracle select执行顺序的详解 SQL Select语句完整的执行顺序:1.from子句组装来自不同数据源的数据: 2.where子句基于指定的条件对记录行进行筛选: 3.group by子 ...
- python中and与or的执行顺序-python之执行顺序随记
python的执行顺序一直都是很令人头疼,简单随记了一些 1.正常顺序执行. print(1)a = 2l = [3] 这个就不附结果了,都能猜得到,这种按顺序执行,还有像等号双等号这种,都是从右边开 ...
- java 执行顺序_Java代码执行顺序
程序中代码执行的顺序非常重要,稍有不慎便会是程序运行出错,那么我将结合实例来分析代码中的执行. 名词解释 首先了解几个名词: 非静态代码块 直接由 { } 包起来的代码,称为非静态代码块 静态代码块 ...
- 怎么控制ajax执行先后顺序,[转]多个ajax请求时控制执行顺序或全部执行后的操作...
一.当确保执行顺序时: 1. 请求加async: false,,这样所有的ajax就会同步执行,请求顺序就是代码顺序 2.$.when($.ajax( {async: false, url : url ...
- jmeter 线程执行顺序_软件接口测试工具Jmeter使用方法详解(一)
介绍完了接口测试是什么及其内在逻辑和Jmeter的安装,从这篇文章开始我们正式开始介绍Jmeter的使用方法.如果对接口测试逻辑流程和Jmeter安装有疑问的朋友,可以看这两篇文章: 星空下:软件接口 ...
- mysql where执行顺序_mysql where执行顺序
where执行顺序是从左往右执行的,在数据量小的时候不用考虑,但数据量多的时候要考虑条件的先后顺序,此时应遵守一个原则:排除越多的条件放在第一个. 在用MySQL查询数据库的时候,连接了很多个过滤条件 ...
- php语句执行顺序,sql语句执行顺序是什么
sql语句执行顺序:1.最先执行from tab:2.where语句是对条件加以限定:3.分组语句[group by-- having]:4.聚合函数:5.select语句:6.order by排序语 ...
最新文章
- 智能人脸识别行业解决方案
- C++(四)——类和对象(下)
- 恭喜神策数据客户趣店赴美 IPO 上市!
- IDEA设置远程debug调试
- python建立数据库并序列化_python之数据的序列化
- android builder模式 插件,如何在Kotlin中实现Builder模式?
- (七) DockerUI与Shipyard以及InfluxDB+cAdvisor+Grafana配置监控...
- Python——三级菜单
- oracle 11g(四)给oracle添加为系统服务(脚本)
- novell.directory.ldap获取邮箱活动目录
- MacOS六个常用的终端命令
- jQuery阻止表单提交
- 进行简单的四则运算(限制:小学水平)
- getchar() 和getch()
- arm交叉编译工具链的选择
- 阻焊机器人系统_点焊机器人
- [分享]我们团队管理的最佳实践——企业积分制度应该如何建立?
- Java编程思想读书笔记——复用类
- 怎样学习AI-Adobe
- 自己做小程序开个社区团购可行吗?
热门文章
- Vmware Ubuntu 自适应屏幕 进入全屏模式
- 常见的几个大数据名词:OLAP、OLTP、BI到底代表着什么?
- linux 命令 nohup 后台运行
- Hbase 02_伪分布式、完全分布式
- leetcode 491. Increasing Subsequences | 491. 递增子序列(Java)
- leetcode 66. 加一(C语言)
- Pandas高级教程之:处理缺失数据
- 小师妹学JVM之:JDK14中JVM的性能优化
- Java中final和static对修饰类、方法、属性的总结
- windows 64位上eclipse访问hadoop