第二次活动不会第二次出现

时间:2015-11-12 16:32:31

标签: android android-layout android-intent android-activity

我正在开展一项包含2项活动的应用程序。 secondActivity向主要信息提供信息,我必须多次访问SecondActivity。问题是第一次一切正常但第二次布局(secondActivity)没有出现。触摸事件响应,但我有一个黑屏(我可以获得信息共享,我回到我的mainActivity)...

这是我的第二个活动

public class SecondActivity extends ActionBarActivity {

       @Override
       protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.second_layout);
       }
       @Override

       public boolean onTouchEvent(MotionEvent e) {
                    String setData="machin";
                    Intent person = new Intent();
                    Bundle backpack = new Bundle();
                    backpack.putString("answer", setData);
                    person.putExtras(backpack);
                    setResult(RESULT_OK, person);
                    finish();

                    return true;
        }

        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            getMenuInflater().inflate(R.menu.menu_main, menu);
                    return true;
         }
}

我在这里称之为

  Intent intent = new Intent(this, SecondActivity.class);
  startActivityForResult(intent, 0);

目前数据共享是juste已设置的字符串,但它只是测试我的两个活动是否可以通信。

修改

我有变化

public boolean onTouchEvent(MotionEvent e) {
                    String setData="machin";
                    Intent person = new Intent();
                    Bundle backpack = new Bundle();
                    backpack.putString("answer", setData);
                    person.putExtras(backpack);
                    setResult(RESULT_OK, person);
                    finish();

                    return true;
        }

进入

 public boolean onTouchEvent(MotionEvent e) {
       String setData="machin";
       Intent person = new Intent(this, MainActivity.class);
       person.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
       person.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
       Bundle backpack = new Bundle();
       backpack.putString("answer", setData);
       person.putExtras(backpack);
       setResult(RESULT_OK, person);

       //finish();
       startActivity(person);

       return true;
    }

现在每次都会出现布局,但我无法获得信息共享(我认为这是因为我没有调用finish(),但如果你知道另一种方法可以做到这一点......)

编辑2 感谢Priya的工作

我的SecondActivity

 public boolean onTouchEvent(MotionEvent e) {
                    String setData="machin";
                    Intent person = new Intent(this, MainActivity.class);
                    person.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                    person.putExtra("name",setData);
                    setResult(RESULT_OK, person);

                    startActivity(person);

                    return true;
   }

我的MainActivity

protected void onResume(){
    Intent intent = getIntent();
    if(intent!=null){
        String name = intent.getStringExtra("name");
        Log.d("fdjsfdjksf","fdjskhfkdjshf"+name);
    }
}

0 个答案:

没有答案