2

我更倾向于 android.Right 现在我正在通过SOAP方法在 android eclipse 中使用 Web 服务。所以我创建了两个页面。第一页由一个 edittext 和一个按钮组成,第二页只由一个文本框组成。我正在创建与android eclipse 中的这个 web服务 GetBibleWordsbyKeyWord完全一样的东西。

在这里,我需要通过第一页上的编辑文本框从用户那里获取输入,并在第二页的文本框上显示适当的文本,这正是上述 Web 服务将根据用户的输入调用(显示)的内容。这些东西必须是单击第一页上的按钮时发生。

注意:- 我已经尝试过了。它正在运行。但它只在第二页显示空白页

怎么做才能实现这个概念?

请找到我的代码以供参考

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()); str在您的webmethod

第二件事改变Object result = envelope.getResponse();

Object result = envelope.bodyIn;

请在互联网上查看如何访问textView第一页中的第二页。我不确定。可能是不可能的。

于 2012-06-13T10:55:20.027 回答