2

私はアンドロイドに自己学習しています.Right今、 SOAPメソッドによってAndroid EclipseでWebサービスを使用しています.だから私は2つのページを作成しました.最初のページは編集テキストとボタンで構成され、2番目のページは1つのテキストボックスのみで構成されています. Android EclipseでこのWebサービスGetBibleWordsbyKeyWordとまったく同じように作成しています。

ここで私が必要としているのは、1 ページ目の edittext ボックスでユーザーからの入力を取得し、2 ページ目のテキスト ボックスに、上記の Web サービスがユーザーの入力に従って呼び出す (表示する) 正確な適切なテキストを表示することです。ページ1からボタンをクリックしたときに発生します。

注:- 私はそれを試しました.実行されています.しかし、2ページ目に空白のページしか表示されません

このコンセプトを実現するために何をすべきか?

参照用に私のコードを見つけてください

Web サービス バックエンド クラス[DYNAMIC PROJECT]

public class GetStudentInformation {
    public String GetStudentInformation(String str){
        return(str);
    }
}

Android Java クラス page1

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Button next = (Button) findViewById(R.id.btn);
        next.setOnClickListener(new View.OnClickListener() {
            public void onClick(View view) {
                Intent myIntent = new Intent(view.getContext(), Web_concept.class);
                startActivityForResult(myIntent, 0);
            }

        });
    }
}

Android Java クラス page2

@Override
public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.main1);

            try
            {
                SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
                EditText num1 = (EditText) findViewById(R.id.editT);
                request.addProperty("str", Integer.valueOf(num1.getText().toString()));
                SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
                envelope.dotNet = true;
                envelope.setOutputSoapObject(request);
                HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
                androidHttpTransport.call(SOAP_ACTION,envelope);
                Object result = envelope.getResponse();
                System.out.println("Result : " + result.toString());
                ((TextView) findViewById (R.id.textView1)).setText(result.toString());
                } 
            catch (Exception E) {
                    E.printStackTrace();
                }
            }
       }

助けてくれてありがとう!

4

1 に答える 1

0

まず、Web サービス メソッドで定義されているように、入力を Web サービスに変更します。つまり、行を変更します。request.addProperty("str", Integer.valueOf(num1.getText().toString()));

あなたが あなたの中で文字列request.addProperty("str", num1.getText().toString()); として定義するようにstrwebmethod

そして第二の変化Object result = envelope.getResponse();

Object result = envelope.bodyIn;

textView1ページ目から2ページ目へのアクセス方法はインターネットで調べてください。私はそれについて確信が持てません。おそらくそれは不可能です。

于 2012-06-13T10:55:20.027 に答える