0

こんにちは、SOAP 呼び出しを使用して 1 つのリストビューを開発する必要があります。ここで 1 つのステップを実装したいと思います。ここでは、詳細な説明が次のアクティビティに表示されることを意味するリストをクリックする必要があります。これを開発するにはどうすればよいですか。助けてください..

これは私のコードです:

public class RetailerActivity extends Activity {
ListView list;
private static final String SOAP_ACTION = "http://xcart.com/customerData1";
private static final String METHOD_NAME = "customerData1";
private static final String NAMESPACE = "http://xcart.com";
private static final String URL = "http://192.168.1.168:8089/XcartLogin/services/RetailerWs?wsdl";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); 

    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);

    envelope.setOutputSoapObject(request);

    HttpTransportSE ht = new HttpTransportSE(URL);
    try {
        ht.call(SOAP_ACTION, envelope);
        SoapPrimitive response = (SoapPrimitive)envelope.getResponse();
        SoapPrimitive s = response;
        String str = s.toString();
        String resultArr[] = str.split("&");//Result string will split & store in an array
        list=(ListView)findViewById(R.id.list);

        TextView tv = new TextView(this);

        for(int i = 0; i<resultArr.length;i++){
        tv.append(resultArr[i]+"\n\n");
       }
        setContentView(tv);

    } catch (Exception e) {
        e.printStackTrace();
    }
}
 }

これは私のWebサービスコードです:

public class RetailerWs {
public String customerData1(){
String customerInfo = "";
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/xcart-432pro","root","");
 //Find customer information where the customer ID is maximum
 PreparedStatement statement =  con.prepareStatement("SELECT * FROM xcart_orders");
 ResultSet result = statement.executeQuery();

 while(result.next()){
customerInfo = customerInfo + result.getString("orderid") + "&" + result.getString("status");
    //Here "&"s are added to the return string. This is help to split the string in Android application
   }
   }

 catch(Exception exc){
   System.out.println(exc.getMessage());
 }

return customerInfo;
}

  }

今、アプリを実行する必要があるということは、orderid とステータスがデータベースから取得され、Android アプリに表示されることを意味します。助けて。

4

2 に答える 2

0

ここで対処することがたくさんあります。

コンテンツ ビューを再割り当てしないでください。それは悪い考えです。

最初に、アダプターを作成する必要があります。こちらのアドバイスとリンクに従ってください

ここで行われているように、オンクリック リスナーを追加して新しいインテントを開く必要があります。

ただし、コードはまだこのステップの準備ができていないため、最初に上記のようにアダプターを作成する必要があります。

離れてこれに取り組み、準備ができたら戻ってきて、より具体的な質問をしてください。

アダプターのオンクリックリスナー内でインテントを開く方法についての質問に対するより具体的な回答を次に示します

于 2012-09-12T12:12:18.197 に答える
0

これは、リストビューの生成とその項目のクリックの処理に役立つ例です。ここで使用されている Web サービス API は JSON ですが、リストビューを作成してその onclick を管理するためにサービス応答がどのように処理されるかを確認できます。問題が解決しない場合はお知らせください。

于 2012-09-12T12:13:57.510 に答える