2011-10-18 33 views
-3

我有以下代碼,我想調用此代碼onclick按鈕 我該怎麼做?如何在單擊按鈕android上調用以下void?

public static void main(String[] args) throws Exception { 
String google = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q="; 
String search = "stackoverflow"; 
String charset = "UTF-8"; 

URL url = new URL(google + URLEncoder.encode(search, charset)); 
Reader reader = new InputStreamReader(url.openStream(), charset); 
GoogleResults results = new Gson().fromJson(reader, GoogleResults.class); 

// Show title and URL of 1st result. 
System.out.println(results.getResponseData().getResults().get(0).getTitle()); 
System.out.println(results.getResponseData().getResults().get(0).getUrl()); 

}

+2

從你的問題顯而易見你是新來的android,我建議你看看這個教程,因爲它會讓你開始:http://developer.android.com/resources/tutorials/hello-world.html – slayton

回答

1

首先,你應該改變一些事情。你不應該命名方法main。在android中,你不使用主要方法。另外在Android中,您不使用System.out.println,而是使用Android Log類。

我會改變的方法是這樣的:當你定義

public static void doSomething() throws Exception { 
    String google = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q="; 
    String search = "stackoverflow"; 
    String charset = "UTF-8"; 

    URL url = new URL(google + URLEncoder.encode(search, charset)); 
    Reader reader = new InputStreamReader(url.openStream(), charset); 
    GoogleResults results = new Gson().fromJson(reader, GoogleResults.class); 

    // Show title and URL of 1st result. 
    String tag = "myTag"; 
    Log.d(tag, results.getResponseData().getResults().get(0).getTitle()); 
    Log.d(tag, results.getResponseData().getResults().get(0).getUrl()); 
} 

然後你OnClickListener只需調用上述方法在onClick()方法:

public void onClick(View v){ 
    doSomething(); 
} 
+0

不正在工作.......... – androiddevs78

+0

確定它本身不起作用,您需要將其合併到活動中。看到這個:http://www.helloandroid.com/category/topics-covered/button – slayton

+0

我將添加所有代碼...請檢查它.... – androiddevs78

0

假設是越來越按鈕點擊被稱爲myButton。然後你會這樣做:

myButton.addOnClickListener(new View.OnClickListener(){ 
    public void onCick(View view){ 
    String google = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q="; 
    String search = "stackoverflow"; 
    String charset = "UTF-8"; 

    URL url = new URL(google + URLEncoder.encode(search, charset)); 
    Reader reader = new InputStreamReader(url.openStream(), charset); 
    GoogleResults results = new Gson().fromJson(reader, GoogleResults.class); 
    }); 

我拿出System.out.println,因爲你不能在android中做這些。您可以嘗試打印到日誌,製作敬酒或做其他類型的輸出。

相關問題