Activity1からActivity2にEditTextを渡そうとしています。findViewById()はあるアクティビティでは動作しますが、他のアクティビティでは機能しません
Activity1コード:
public void openNextActivity()
{
Intent intent = new Intent("com.abc.xyz.ImageActivity");
EditText myEditText = (EditText)findViewById(R.id.myEditText);
int myEditTextId = myEditText.getId();
//For Test purpose ----- starts
// **Point1: next line of code works fine in this Activity1**
EditText myEditTextTest = (EditText)findViewById(myEditTextId);
//For Test purpose ----- ends
intent.putExtra("myEditText", myEditTextId);
startActivity(intent);
}
Activity2コード:
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.comments_detail);
Bundle extras = getIntent().getExtras();
if(extras != null)
{
int myEditTextId = extras.getInt("myEditText");
// Point2: next line of code displays the correct Id
Log.d("tag","myEditTextId"+ myEditTextId);
// Point 3: Next line of code not works in this Activity2
EditText myEditText = (EditText)findViewById(myEditTextId);
if(myEditText != null)
{
Log.d("tag","Not null");
}
else
{
Log.d("tag","null");// **Point4: this condition executes**
}
}
}
問題はラインということである。のEditText myEditText =(のEditText)findViewById(myEditTextId)。 Activity1で正常に動作しますが、Activity2で動作しません。
EDIT:
注:両方の活動異なるレイアウトをあなたの貴重な時間&助けを 感謝を使用しています。
属し一意のIDと、このIDを返すので、あなたがActivity1とActivity2に同じレイアウトR.layout.comments_detailを使用している場合、それは働くことができると思います()それは仕事でなければなりません。ありがとう – user370305