2016-09-04 20 views
0

我试图把如果其他按钮内部的onClick如何在onPostExecute中创建一个方法?

这里的的onClick

@Override 
     public void onClick(View view) { 
       ettext.getText().toString(); 
       viewword.getText().toString(); 
       select(); 

       if(viewword.equals("")) { 

        Toast.makeText(getBaseContext(), "Does not exist in database.1", Toast.LENGTH_LONG).show(); 
       }else{ 
        sendChatMessage(); 
       } 


     } 

这里的onPostExecute

@Override 
     protected void onPostExecute(String result) { 
      TextView disp = (TextView) findViewById(R.id.view); 
      try { 
       JSONObject json_data = new JSONObject(result); 
       word = json_data.getString("server_response"); 
       disp.setText(word); 


      } catch (JSONException e) { 
       disp.setText(""); 
      } 

     } 

的问题是,该应用程序是不读书的,如果else语句和请继续执行onPostExecute。我的解决方案是在onPostExecute内创建一个方法,但我不知道如何。

+2

提示:停止做机器人的时刻。只要学习基本的Java基础知识。 ** Android **是一个高级主题,您甚至不理解如何编写正确的Java代码的规则。说真的:你试图跑步,没有丝毫的想法如何爬行。学习Java。否则,你的Android实验将会令人沮丧;因为没有任何工作。 – GhostCat

回答

0

您不能在方法中创建方法,您可以在AsyncTask类中创建一个方法,并使用onPostExecute方法调用它。

+0

您能否详细阐述一下?我没有得到它:( –

2

这里的问题不是onPostExecute,而是你的代码。

viewword.getText()。toString();

这只是一个字符串值,当您检查它是否为null时,您需要将它存储在某个变量中。因此,你的代码应该是

String checkVariable =viewword.getText().toString(); if(checkVariable.equals(""){ \\your code}

if(viewword.getText().toString().equals("") 

希望这有助于:)

+0

我试过了你给我的代码,但是发现了一个新的代码,如果我输入了一个单词,数据库就无法读取,并且它说这个单词即使存在也不存在。有没有可能的解决方案呢? –

相关问题