我创建了三个活动,第一个是Main_Activity,第二个叫做new_button,第三个叫做general_button。 main_activity包含其他两个活动,new_button活动的按钮(New)和general_button活动的按钮(general)。 new_button活动包含一个EditText和一个名为done_button的按钮。 general_button活动只包含一个TextView。我使用Intent将Edit_bxt中的编写数据从new_button活动传输到general_button活动中的TextView,并使用以下代码:
new_button(活动):
package com.tarek.topshine;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class new_button extends Activity {
Button done_button;
String text;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.new_button);
addListenerOnButton();}
public void addListenerOnButton() {
done_button = (Button) findViewById(R.id.done_button);
done_button.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
EditText editText = (EditText)findViewById(R.id.editText1);
String text = editText.getText().toString();
Intent myIntent = new Intent(view.getContext(),general_button.class);
myIntent.putExtra("mytext",text);
startActivity(myIntent);
}
});
}
general_button(活动):
package com.tarek.topshine;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class general_button extends Activity {
TextView mTextview;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.general_button);
mTextview = (TextView)findViewById(R.id.textView1);
mTextview.setText(getIntent().getStringExtra("mytext"));
}
}
现在我遇到的问题是我无法将new_button活动中的意图信息保存到general_button活动中。例如:我需要稍后从main_activity打开general_button活动并查看已编辑的信息。我在网上看到我可以使用onSavedInstanceState方法,但我无法弄清楚:(
我做错了吗?如果我是,我怎么能解决这个问题?!
感谢您的帮助:)
答案 0 :(得分:1)
如果您使用PreferenceManager.getDefaultSharedPreferences()
,可能会更好您可以在http://developer.android.com/guide/topics/data/data-storage.html#pref中阅读 一个活动写入首选项,另一个活动从同一首选项读取。
保存/恢复状态可能无济于事,因为这里有共享数据,而不是重新创建相同的数据。