私はアンドロイドアプリに取り組んでいます。最初のアクティビティの 1 つに文字列があります。そしてintent.putExtra()
、最初のアクティビティで開始した 2 番目のアクティビティにその文字列を渡すために使用します。活動コードの関連部分は次のとおりです。
最初の活動
final ListView lv = (ListView) findViewById(R.id.listView1);
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
String selectedFromList = (lv.getItemAtPosition(arg2).toString());
Intent content_umre_Intent = new Intent("com.uygulama.hacc.ContentActivity");
content_umre_Intent.putExtra("key", selectedFromList);
startActivity(content_umre_Intent);
}
});
第二の活動
Context context = getApplicationContext();
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(context, text, duration);
String text = getIntent().getStringExtra("key").toString();
if(text=="abc"){
toast.show();
}
ここには奇妙なものがあります。if文の外に置いtoast.show()
てみると、「abc」と等しいことがわかりました。
ただし、変数text
が「abc」とまったく同じであっても、ifステートメントには入りません。
なぜこれが起こるのか分かりますか?理由が見つかりませんでした。今すぐ助けが必要です。
どんな助けでも大歓迎です。