私には3つの活動があります:
- ログインする
- 選択
- エントリ
ログインから選択肢へ(そしてこれはうまく機能します)、次に選択肢からエントリへと変数「名前」を渡す必要があります。これが問題です:/名前を選択肢に渡すことができますが、それを渡そうとするとエントリーすることはできません!ログインからエントリに変数を直接渡すと、それが機能するので奇妙です:/だから:
- ログイン–>エントリは機能します!
- ログイン–>選択は機能します!
- 選択–>エントリが機能しません!
これは、ログインから選択に渡すコードです
Intent intent;
String pkg=getPackageName();
intent=new Intent(getApplicationContext(), scelta.class);
//inseriamo i dati nell'intent
String parts[] = risp.split("/");
intent.putExtra(pkg+".myNome", parts[0]);
intent.putExtra(pkg+".myId", parts[1]);
startActivity(intent);
これは選択です(おそらくエラーです):
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.scelta);
// l'intent di questa activity
Intent intent=getIntent();
String pkg=getPackageName();
//prendiamo i dati
String nome=intent.getStringExtra(pkg+".myNome");
String Id=intent.getStringExtra(pkg+".myId");
intent.putExtra(pkg+".myNome", nome);
intent.putExtra(pkg+".myId", Id);
TextView tvNome = (TextView) findViewById(R.id.txtNome);
tvNome.setText(nome);
}
//pulsante per il checkin
public void checkin (View v) {
// l'intent di questa activity
Intent intent=getIntent();
String pkg=getPackageName();
//prendiamo i dati
String nome=intent.getStringExtra(pkg+".myNome");
String Id=intent.getStringExtra(pkg+".myId");
//li reinseriamo nell'intent
intent.putExtra(pkg+".myNome", nome);
intent.putExtra(pkg+".myId", Id);
intent=new Intent(getApplicationContext(), entrata.class);
startActivity(intent);
}
チェックインは、選択から入力へのパスのためにボタンをタップするときに使用する方法です。そして、これは私がエントリーで名前をとるところです:
Intent intent=getIntent(); // l'intent di questa activity
String pkg=getPackageName();
String nome=intent.getStringExtra(pkg+".myNome"); //prendiamo i dati
TextView tvNome = (TextView) findViewById(R.id.nome);
tvNome.setText(nome);
みんなありがとう :)