java - Android中的调用方法

标签 java android

我正在尝试调用我编写的方法。它编译除了一行...

public class http extends Activity {

httpMethod();            //will not compile



public void httpMethod(){
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost("http://site/api/");

    try {
        // Add your data
        List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);

        // Execute HTTP Post Request
        HttpResponse response = httpclient.execute(httppost);

        String test = "hello";

        TextView myTextView = (TextView) findViewById(R.id.myTextView);
        myTextView.setText(test);

    } catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
    } catch (IOException e) {
        // TODO Auto-generated catch block
    }
}    
}

我不是最好的 Java 专家,但我认为像这样调用方法会得到响应。然而,“你好”没有显示......

如何正确调用该方法?

最佳答案

编辑:为了不让任何人怀疑,这个答案只解决了为什么你会收到编译时错误。它解决您应该在 Android 中的哪个线程和什么时间做什么。

我个人建议您暂时放下 Android,在更简单的环境(例如控制台应用程序)中学习 Java,然后当您对这门语言感到满意时,重新访问 Android 并学习 Android 开发的所有要求 -这显然不仅仅是语言。


您正试图在您的类中直接将方法作为语句调用。你不能那样做——它必须是构造函数、初始化程序 block 、其他方法或静态初始化程序的一部分。例如:

// TODO: Rename this class to comply with Java naming conventions
public class http extends Activity {
    // Constructor is able to call the method... or you could call
    // it from any other method, e.g. onCreate, onResume
    public http() {
        httpMethod();
    }

    public void httpMethod() {
        ....
    }
}

请注意,我只是给出了这个示例来向您展示一个有效的 Java 类。它并不意味着您实际上应该从构造函数中调用该方法。

关于java - Android中的调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11401385/

相关文章:

Java : using graphics component within an action listener

java - JButton 仅在可见性设置为 True-Java 时才起作用

java - 动态按钮的 NullPointerException 设置 onClickEvent

Android - 谷歌分析。跟踪 Activity View

java - 如何将 jsonobject 添加到我想要的 jsonarray 中

java - 刚刚创建了一个新的 android 应用程序项目,当我尝试运行简单的 hello world 它有一个错误

Android SQLite 更新查询不起作用?

android - 如何加载异步 url 图像? (libgdx)

android - 在 Android 中解析巨大的 JSON 对象?

过滤器中的 Java OutOfMemory 错误