2017-01-30 47 views
-1

我很瞭解你如何通過意圖存儲和檢索數據,但我不知道的是代碼實現。我想完成的是將存儲的數據(名稱/值對和捆綁對象)從MainActivity類傳遞到我的ThirdActivity類。這裏有一個片段是我迄今爲止嘗試(其中,當用戶點擊a3button它只是顯示一個空白頁,沒有字符串):想要顯示存儲的名稱/數值數據意圖到新的活動屏幕

MainActivity從中我要存儲的數據發送給ThirdActivity:

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     Button a2_button = (Button) findViewById(R.id.a2_button); 
     a2_button.setOnClickListener(new View.OnClickListener() { 

      public void onClick(View v) { 
       Intent a2intent = new Intent("com.tester.lab.x"); 
       startActivityForResult(a2intent, 1); 
      } 
     }); 

     Button a3_button = (Button) findViewById(R.id.a3_button); 
     a3_button.setOnClickListener(new View.OnClickListener() { 

      public void onClick(View v) { 

       Intent a3intent = new Intent(v.getContext(), ThirdActivity.class); 

       a3intent.putExtra("greeting","my Name"); 
       startActivity(a3intent); 

      } 
     }); 
    } 
} 

ThirdActivity:

public class ThirdActivity extends AppCompatActivity { 

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

     getIntent().getStringExtra("greeting"); 

    } 
} 

我將如何顯示字符串 「我的名字」,一旦用戶點擊按鈕ThirdActivity?任何幫助都很棒,謝謝!

+0

您必須在TextView中設置該值 –

+0

請使用好的變量名稱並遵循一些約定,如駱駝大小寫。 – Enzokie

+0

'我如何顯示字符串「我的名字」與任何其他字符串一樣。沒有區別。任何'String'都是一個'String' –

回答

1

一切都很好,只需添加String類型你得到的值,當你想使用這個String(在TextView其他顯示..):

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

    EditText text = (EditText) findViewById(R.id.your_textView_id); 

    String value = getIntent().getStringExtra("greeting"); 
    text.setText(value); 
} 

或使用Button

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

    EditText text = (EditText) findViewById(R.id.your_textView_id); 
    Button three = (Button) findViewById(R.id.your_button_id); 

    three.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      String value = getIntent().getStringExtra("greeting"); 
      text.setText(value); 
     } 
    });  
} 
+0

那麼你如何在屏幕上顯示該字符串? – skoteinos

+0

檢查我的代碼,使用textview顯示字符串。添加一個textview到你的activity_third佈局,並啓動textview並添加字符串 – W4R10CK

+0

@skoteinos,你覺得這有幫助嗎? – W4R10CK

相關問題