안녕하세요.
안드로이드 공부중인 학생입니다.
커스텀 리스트뷰 공부하면서 Sharedpreference를 사용해서 메모를 추가버튼을 누를때마다 리스트가 추가되고 추가된 메모를 저장하는걸 구현해보려고 하는대
1개의 리스트는 추가가되고 그 후로 추가버튼을 누르고 메모를 입력하면 계속 메모내용만 바뀌내요..
그래서 고민해서 보니 이부분에서 String input에 값이 계속 변경되는거 같은대
혹시 계속 추가되게 하려면 어떡해 해야할까요??ㅠㅠ
String 객체를 반복문으로 계속 생성해볼까도 생각햇는대 변수명을 반복문으로 다르게 생성할수가 없더라구요.
선배님들의 조언 부탁드립니다.
SharedPreferences pref = getSharedPreferences("pref", MODE_PRIVATE);
String input = (pref.getString("input_memo",null));
this.saveddata.add(input);
adapter.notifyDataSetChanged();
결론적으로 제가 구현하고 싶은건 추가버튼 누르고 입력한 메모가 리스트로 나타나고
메모 리스트가 저장되는 것입니다.
package com.example.user.shared;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.view.View;
import android.widget.Button;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import java.util.ArrayList;
import static java.lang.String.valueOf;
public class SubActivity extends Activity {
ArrayList<String> saveddata = new ArrayList<String>();
Adapter adapter;
ListView listView;
Button btnadd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sub);
//메모 추가
listView = (ListView)findViewById(R.id.listview);
adapter = new Adapter(this,saveddata);
listView.setAdapter(adapter);
btnadd = (Button)findViewById(R.id.btnadd);
btnadd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(SubActivity.this,Memo.class);
startActivity(intent);
}
});
SharedPreferences pref = getSharedPreferences("pref", MODE_PRIVATE);
String input = (pref.getString("input_memo",null));
this.saveddata.add(input);
adapter.notifyDataSetChanged();
}
}
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
package com.example.user.shared;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class Memo extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.memo);
final EditText input_memo = (EditText)findViewById(R.id.input_memo);
Button btnyes = (Button)findViewById(R.id.btnyes);
btnyes.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(Memo.this,SubActivity.class);
SharedPreferences pref = getSharedPreferences("pref", MODE_PRIVATE);
SharedPreferences.Editor editor = pref.edit();
editor.putString("input_memo",input_memo.getText().toString());
editor.commit();
startActivity(intent);
finish();
}
});
}
}