java – 在android中发送消息

在我的应用程序在android中发送消息我使用了以下代码.

package wishme.code;


import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class Activity2 extends Activity{

    public void onCreate(Bundle savedInstancestate) {
        super.onCreate(savedInstancestate);
        setContentView(R.layout.main2);
        Button prevIoUs=(Button) findViewById(R.id.button_prev);
        Button send=(Button) findViewById(R.id.button_send);
        EditText ph_no=(EditText) findViewById(R.id.edit_phone);
        EditText msg=(EditText) findViewById(R.id.edit_msg);

    }
    public void prevclickhandler(View view)
    {
        switch(view.getId())
        {
        case R.id.button_prev:
        Intent intent=new Intent();
        setResult(RESULT_OK,intent);
        finish();
        break;
        case R.id.button_send:
            **String ph_no= ph_no.getText().tostring();** 
    }}
}

但突出显示的行给出了错误
方法getText未定义类型字符串
我怎么解决这个问题.

解决方法:

您的变量在不同的范围内定义. ph_no EditText在onCreate中定义,在您的单击处理程序中不可用.您实际调用getText()的ph_no是您定义的String.

相反,您可以将Activity中的EditText定义为实例变量,并重命名String,以便变量名称不会发生冲突.

另一种方法是在需要访问EditText时调用findViewById,如下所示:

String ph_no = ((EditText) findViewById(R.id.edit_phone)).getText().toString();

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...