2011-11-17 64 views
0

我试图将数据从一个页面传输到另一个页面,但是一些问题即将到来。下面是code.its强制关闭我正在按第二页按钮后如何在Android中将数据从一个屏幕传输到另一个屏幕?

这里我第一个程序的应用程序:

package com.life.insurance; 

import android.app.Activity; 
import android.content.Context; 
import android.content.Intent; 
import android.os.Bundle; 
/*import android.view.Menu;*/ 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.EditText; 


public class LifeInsuranceActivity extends Activity implements OnClickListener{ 
/* private static final int MENU_STARS = 1; 
    private static final int MENU_REFRESH = 2;*/ 
    Context mCtx; 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     Button submit =(Button)findViewById(R.id.button1); 
     submit.setOnClickListener(this); 
    } 


    @Override 
    public void onClick(View v) { 
     // TODO Auto-generated method stub 
     switch (v.getId()){ 
     case R.id.button1: 
      mCtx = this; 

      String intext = new String(); 
      intext=((EditText)findViewById(R.id.editText1)).getText().toString(); 

       Intent myIntent = new Intent(mCtx, MenuSelection.class); 
       Bundle bundle = new Bundle(1); 
       bundle.putString("ganna", intext); 
       myIntent.putExtras(bundle); 

       /*Start Activity*/ 
       mCtx.startActivity(myIntent); 

       /*Start ActivityForResult*/ 
       ((Activity)mCtx).startActivityForResult(myIntent, 2); 

      setContentView(R.layout.menuselection); 
      break;  
     } 
    } 
} 

这是我的第二个活动

package com.life.insurance; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.TextView; 

public class MenuSelection extends Activity implements OnClickListener{ 
    String ot; 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.menuselection); 
     Button search =(Button)findViewById(R.id.imageButton1); 
     search.setOnClickListener(this); 
     Bundle extras = this.getIntent().getExtras(); 
     ot =extras.getString("ganna").toString(); 
     final TextView r =(TextView)findViewById(R.id.txt1); 
     r.setText(ot); 

    } 

@Override 
public void onClick(View v) { 
    // TODO Auto-generated method stub 
    switch (v.getId()){ 
    case R.id.imageButton1: 


     break; 

    } 
    } 

} 

请帮我做到这一点

+1

有没有logcat stacktrace,你可以发布它吗? –

+0

你可以发布Logcat中显示的任何错误吗?你还记得在androidmanifest文件中声明你的第二个活动吗? –

+1

我们需要logcat输出,你可以用输出编辑帖子吗? – Aracem

回答

3

没有logcat转储很难回答,但我认为有几件事要检查。首先,发送一个字符串应该是直截了当:

intent.putExtra("key", "value"); 

如果你想发送复杂的对象或包,你可以这样做,但我坚持你的发送和阅读字符串的问题。

getIntent().getStringExtra("key") 

我觉得在你的情况下使用Bundle是没有必要的。

其次,您正在调用startActivity和startActivityForResult。打电话给另一个人。既然你正在寻找答案,你可能想使用后者。

最后,请确保您已将第二个活动添加到清单中,如下所示。您还想在启动后续活动时使用活动的上下文,而不是按钮。

这里似乎有几个问题可能导致崩溃。

相关问题