2016-11-11 104 views
-2

我開始使用Android Studio,我看了一些教程,但沒有一個看起來可行。我有四個字符串,spielernr1,spielernr2,spielernr3和koenig,我從MainTectivity類的EditTexts中獲得了它們。現在我想在我的seite1類中使用它們,但我不知道如何將它們導入seite1類。下面是在MainActivity類的代碼:如何從一個類獲取字符串到另一個類?

public class MainActivity extends AppCompatActivity { 
String spielernr1, spielernr2, spielernr3, koenig; 
EditText spieler1; 
EditText spieler2; 
EditText spieler3; 
EditText kartenkoenig; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 

    spieler1 = (EditText) findViewById(R.id.editText); 
    spieler2 = (EditText) findViewById(R.id.editText2); 
    spieler3 = (EditText) findViewById(R.id.editText3); 
    kartenkoenig = (EditText) findViewById(R.id.editText4); 
    Button startbutton = (Button) findViewById(R.id.button2); 
    startbutton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      spielernr1 = spieler1.getText().toString(); 
      spielernr2 = spieler2.getText().toString(); 
      spielernr3 = spieler3.getText().toString(); 
      koenig = kartenkoenig.getText().toString(); 

      setContentView(R.layout.activity_seite1); 


     } 
    }); 

} 

而這裏的seite1的代碼:

public class seite1 extends AppCompatActivity { 

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



} 

}

回答

5

如果我理解你的問題,你有一個活動獲取一些信息,並希望在另一個活動中使用它們。 所以你可以使用這樣的代碼中的第一個活動意圖,當你想去第二類:

Intent i = new Intent(ActivityOne.this, ActivityTwo.class); 
i.putExtra("value", "some string"); 
startActivity(i); 

在第二活動中使用此代碼:

Bundle extras = getIntent().getExtras(); 
// get data via the key 
String value1 = extras.getString("value"); 

你可以有額外多達你想

0

你可能需要多讀一點關於如何開始新的活動,你做錯了。

你應該有這樣的事情:

Intent intent= new Intent(MainActivity.this,OtherActivity.class); 
starActivity(intent); 

這個網站將幫助您瞭解如何開始新的活動,將數據發送給它。

Start and Send data

+0

您的示例並不是特別有用,因爲它沒有顯示如何將'String'傳遞給正在啓動的活動。也許你可以編輯它來提供一個例子? – clownba0t

+0

感謝您的評論,你真的檢查我添加的鏈接?你會發現如何添加一個字符串到捆綁或使用額外。 –

+0

鏈接無關緊要。除了它可能已經死了的事實之外,你提供的示例代碼只是開始一個沒有任何額外的活動,而OP將需要知道如何添加extras(在這種情況下'String' extras)到他們用來啓動下一個活動。請不要誤解我的意圖(沒有雙關語意圖) - 只是試圖確保OP有明確的答案:) – clownba0t

0

首先你需要了解如何使用意圖分享不同活動之間的數據。

在第一個活動 - :

Intent intent = new Intent(ActivityOne.this, ActivityTwo.class); 
i.putExtra("key", "StringToSend"); 
startActivity(intent); 

在第二個活動 - :

Intent i=getIntent(); 
String s = intent.getExtras().getString("key"); 

使用這個S在活動的任何地方字符串。

相關問題