こちらを参考にしました。
http://yan-note.blogspot.jp/2010/09/android_4530.html
Sub
public class SubActivity extends AppCompatActivity{ public String name; public String job; public int image; public String comment; public TextView text; public TextView text2; private static final int SUBACTIVITY = 1; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.sub_activity); android.support.v7.app.ActionBar actionbar = getSupportActionBar(); actionbar.setHomeButtonEnabled(true); actionbar.setDisplayHomeAsUpEnabled(true); text = (TextView) findViewById(R.id.textView); text2 = (TextView) findViewById(R.id.textView2); TextView text3 = (TextView) findViewById(R.id.textView3); ImageView imageView = (ImageView) findViewById(R.id.imageView); ListView listView = (ListView)findViewById(R.id.listView1); Intent sub = getIntent(); name = sub.getStringExtra("list_names"); job = sub.getStringExtra("list_jobs"); image = sub.getIntExtra("list_images", R.drawable.human); comment = sub.getStringExtra("list_comments"); text.setText(name); text2.setText(job); imageView.setImageResource(image); text3.setText(comment); text.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent njIntent = new Intent(); njIntent.putExtra("LIST_NAMES",name); njIntent.putExtra("LIST_JOBS",job); njIntent.putExtra("LIST_IMAGE",image); njIntent.putExtra("LIST_COMMENT",comment); njIntent.setClassName("com.example.tsuyoshiokaprofile", "com.example.tsuyoshiokaprofile.NameJobEditActivity"); startActivity(njIntent); } }); ーーーーーーー中略ーーーー @Override protected void onActivityResult (int requestCode, int resultCode, Intent intent) { super.onActivityResult(requestCode, resultCode, intent); if (requestCode == SUBACTIVITY) { if (resultCode == RESULT_OK) { text = (TextView) findViewById(R.id.textView); text2 = (TextView) findViewById(R.id.textView2); Intent njIntent = getIntent(); Bundle extras = intent.getExtras(); String editedName = njIntent.getStringExtra("NAME_INPUT"); String editedJob = njIntent.getStringExtra("JOB_INPUT"); text.setText(editedName); text2.setText(editedJob); Log.d("LogCat", "Log message"); } } }
NameJobEditActivity
package com.example.tsuyoshiokaprofile; ーーーーーーーーーー略ーーーー public class NameJobEditActivity extends AppCompatActivity{ EditText editName; EditText editJob; Button button; String editedName; String editedJob; Intent njIntent; String subName; String subJob; private static final int SUBACTIVITY = 1; String subText; String subText2; int subImage; String subComment; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.name_job_edit); editName = (EditText) findViewById(R.id.editName); editJob = (EditText) findViewById(R.id.editJob); button = (Button) findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //Inputされたのを取得 editedName = editName.getText().toString(); editedJob = editJob.getText().toString(); //保存を押すと、subに戻る。 Intent intent = new Intent(); intent.setClassName("com.example.tsuyoshiokaprofile", "com.example.tsuyoshiokaprofile.SubActivity"); //intentに入力された文字列を詰める intent.putExtra("NAME_INPUT",editedName); intent.putExtra("JOB_INPUT",editedJob); //値を詰めたものをSubに渡して画面遷移する startActivityForResult(intent, SUBACTIVITY); } }); } }
Edit画面で入力し、ボタンを押すと、デフォルトの表示になってしまうのですがなぜでしょうか。。。
ボタンをタップするまではエラーなく動作していますが、記述は合ってますでしょうか?
(startActivityForResult, onActivityResultあたりが合ってるか不安です)
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。