Java 为什么我不';无法从其他活动中获取字符串?
您好,我想构建一个android应用程序,向其他活动发送文本,但在第二个活动中我看不到输入文本:(我尝试了本教程:Java 为什么我不';无法从其他活动中获取字符串?,java,android,android-intent,android-activity,fragment,Java,Android,Android Intent,Android Activity,Fragment,您好,我想构建一个android应用程序,向其他活动发送文本,但在第二个活动中我看不到输入文本:(我尝试了本教程: Bundle bundle = getIntent().getExtras(); if(bundle != null) { String message = bundle.getString(MainActivity.EXTRA_MESSAGE); }
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
在本教程中,我也会这样做:
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
如果我点击send,我将使用Intent类并输出我的字符串
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
这是我的DisplayMessageActivity.java代码
public class DisplayMessageActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_display_message);
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment()).commit();
}
// Get the message from the intent
Intent intent = getIntent();
String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);
// Create the text view
TextView textView = new TextView(this);
textView.setTextSize(40);
textView.setText(message);
// Set the text view as the activity layout
setContentView(textView);
}
/**
* A placeholder fragment containing a simple view.
*/
public static class PlaceholderFragment extends Fragment {
public PlaceholderFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_main, container,
false);
return rootView;
}
}
}
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
更新:
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
我的第一项活动:
public class MainActivity extends ActionBarActivity {
public final static String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
// Button Events
public void sendMessage(View view) {
Intent intent = new Intent(this, DisplayMessageActivity.class);
EditText editText = (EditText) findViewById(R.id.edit_message);
String message = editText.getText().toString();
intent.putExtra(EXTRA_MESSAGE, message);
startActivity(intent);
}
}
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
尝试在DisplayMessageActivity中获取您的包
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
在《发件人法》中:
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
Intent intent = new Intent(Activity_A.this, DisplayMessageActivity.class);
intent.putExtra(MainActivity.EXTRA_MESSAGE, "Your title");
Activity_A.this.startActivity(intent);
MainActivity.EXTRA_MESSAGE是您的密钥传递使用密钥传递来自第一个活动的消息,并在第二个活动中获取这些值,如下所示
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
bundle = getIntent().getExtras();
if (bundle != null) {
value1 = bundle.getString("key1");
value2 = bundle.getString("key2");
}
intent.putExtra("key1", "message1");
intent.putExtra("key2", "message2");
在第一个活动中,像这样传递消息
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
bundle = getIntent().getExtras();
if (bundle != null) {
value1 = bundle.getString("key1");
value2 = bundle.getString("key2");
}
intent.putExtra("key1", "message1");
intent.putExtra("key2", "message2");
试一试
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
在第一个活动中
Bundle bundle = getIntent().getExtras();
if(bundle != null)
{
String message = bundle.getString(MainActivity.EXTRA_MESSAGE);
}
intent.putExtra("EXTRA_MESSAGE", "Your title");
我在你的代码中没有看到2个活动。这是第二个…我也发布了第一个…时刻发布你的MainActivity代码。因为当你正确地传入MainActivity并启动当前活动(DisplayMessageActivity)时,它会出现为什么不出现?你能在DisplayMessageActivity中获得你的包吗?