开发一个应用程序,界面上有一个文本框和一个按钮。在文本框中输入信息,点击按钮,调用系统自带的短消息发送界面进行消息发送。

vip小银 发布于 2015/03/21 11:12
阅读 1K+
收藏 0

我是初学者,我现在只有实现了跳转,但不能把输入的内容加载到短信内容那一栏中,当我加入红色那两行代码时,程序无法跳转。

package com.example.hello;


import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.telephony.gsm.SmsManager;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;


public class MainActivity extends Activity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button bCall=(Button)findViewById(R.id.button);
        bCall.setOnClickListener(new View.OnClickListener() {
       
public void onClick(View v) {
// EditText a=(EditText)findViewById(R.id.txt);
   // String b=a.getText().toString();
Uri smsToUri = Uri.parse("smsto:");  
Intent intent = new Intent(Intent.ACTION_SENDTO, smsToUri);  
 intent.putExtra("sms_body",);
MainActivity.this.startActivity(intent);  
 
}
 });
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
       }
    
}


加载中
0
LCT
LCT

把a定义成全局的,在onCreate中实例化

vip小银
vip小银
如何实例化
0
LCT
LCT

// EditText a=(EditText)findViewById(R.id.txt);

就是在类里面定义一个全局变量
private EditText a;
然后在OnCreate里给a赋值
 a=(EditText)findViewById(R.id.txt);



vip小银
vip小银
我就是这个问题搞了好久,到现在也没解决
vip小银
vip小银
一旦添加这两句,程序就停止运行
0
LCT
LCT

引用来自“LCT”的评论

// EditText a=(EditText)findViewById(R.id.txt);

就是在类里面定义一个全局变量
private EditText a;
然后在OnCreate里给a赋值
 a=(EditText)findViewById(R.id.txt);



package com.example.hello;


import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.telephony.gsm.SmsManager;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;


public class MainActivity extends Activity {
    

    private EditText a;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        a=(EditText)findViewById(R.id.txt);
        Button bCall=(Button)findViewById(R.id.button);
        bCall.setOnClickListener(new View.OnClickListener() {

        
public void onClick(View v) {
String b=a.getText().toString();
Uri smsToUri = Uri.parse("smsto:");  
Intent intent = new Intent(Intent.ACTION_SENDTO, smsToUri);  
 intent.putExtra("sms_body",);
MainActivity.this.startActivity(intent);  
 
}
 });
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
       }
    
}


vip小银
vip小银
不行 这样写程序运行不了
返回顶部
顶部