我是Android新手。我想发送&通过短信分享TextView
。
我可以通过将文本放在字符串中来发送。但我无法使用TextView
发送或分享该值。
我该怎么做?
这是我的代码我在做什么..
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = (TextView)findViewById(R.id.textView);
final String tv1 = tv.getText().toString();
btn1 = (Button)findViewById(R.id.button);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent localIntent = new Intent("android.intent.action.VIEW", Uri.parse("tel:"));
localIntent.putExtra("sms_body", MainActivity.this.getText(Integer.parseInt(tv1)));
localIntent.setType("vnd.android-dir/mms-sms");
MainActivity.this.startActivity(localIntent);
}
});
btn2 = (Button)findViewById(R.id.button2);
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent localIntent = new Intent("android.intent.action.SEND");
localIntent.setType("text/plain");
localIntent.putExtra("android.intent.extra.TEXT", R.string.app_name);
MainActivity.this.startActivity(Intent.createChooser(localIntent, "Share SMS"));
}
});
}
我收到此错误...
FATAL EXCEPTION: main
Process: nextappsbd.sendshare, PID: 3521
java.lang.NumberFormatException: Invalid int: "Hello World!"
at java.lang.Integer.invalidInt(Integer.java:137)
at java.lang.Integer.parse(Integer.java:374)
at java.lang.Integer.parseInt(Integer.java:365)
at java.lang.Integer.parseInt(Integer.java:331)
at nextappsbd.sendshare.MainActivity$1.onClick(MainActivity.java:27)
at android.view.View.performClick(View.java:4463)
at android.view.View$PerformClick.run(View.java:18792)
at android.os.Handler.handleCallback(Handler.java:808)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:5344)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:676)
at dalvik.system.NativeStart.main(Native Method)
答案 0 :(得分:0)
tv = (TextView)findViewById(R.id.textView);
final String tv1 = tv.getText().toString();
btn1 = (Button)findViewById(R.id.button);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent localIntent = new Intent("android.intent.action.VIEW", Uri.parse("tel:"));
localIntent.putExtra("sms_body", tv1);
localIntent.setType("vnd.android-dir/mms-sms");
MainActivity.this.startActivity(localIntent);
}
});
btn2 = (Button)findViewById(R.id.button2);
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent localIntent = new Intent("android.intent.action.SEND");
localIntent.setType("text/plain");
localIntent.putExtra("android.intent.extra.TEXT", tv1);
MainActivity.this.startActivity(Intent.createChooser(localIntent, "Share SMS"));
}
});
}
答案 1 :(得分:-1)
Intent message = new Intent( Intent.ACTION_VIEW, Uri.parse("sms:" + "") );
message.putExtra( "sms_body",Textview.gettext.toString() );
startActivity(message);
试试这个