2012-12-29 6 views
0

경험이 거의없는 안드로이드 프로그래머로서 도움이 필요합니다. 저는기도 요청을 기록 할 수있는 활동이 필요한 교회를 위해이 응용 프로그램을 디자인하고 있습니다 (할 일 목록 작성과 유사). 이 시점에서 목록에 항목을 입력 할 수는 있지만 아래에서 공유 환경 설정 발췌를 사용하여 닫은 후에 저장하고 다시 돌아 오지 않는 것처럼 보입니다.이 사이트를 둘러 보니 실제 버튼을 누르지 않고도이 작업을 수행 할 수 있습니다. 저장합니다.목록에 대한 공유 환경 설정

SharedPreferences prayerRequests = getPreferences (Activity.MODE_PRIVATE);

ListView myListViewa = (ListView)findViewById(R.id.myListView); 

SharedPreferences.Editor editor = prayerRequests.edit(); 

editor.putString("prayers", myListViewa.toString()); 

editor.apply(); 

전체 클래스는 여기에 있습니다 :

package com.direction.investor.prayerjournal; 

    import java.util.ArrayList; 



    import android.annotation.TargetApi; 
    import android.app.Activity; 
    import android.os.Build; 
    import android.os.Bundle; 
    import android.view.KeyEvent; 
    import android.view.View; 
    import android.widget.ArrayAdapter; 
    import android.widget.EditText; 
    import android.widget.ListView; 
    import android.widget.TextView; 
    import android.content.SharedPreferences; 
    import android.content.SharedPreferences.Editor; 



public class prayerRequests extends Activity { 

@TargetApi(Build.VERSION_CODES.GINGERBREAD) 
public void onCreate(Bundle savedInstanceState) 
{ super.onCreate(savedInstanceState); 
setContentView(R.layout.prayerrequest); 

ListView myListView = (ListView)findViewById(R.id.myListView); 
final EditText myEditText = (EditText)findViewById(R.id.myEditText); 

final ArrayList<String> prayers = new ArrayList<String>(); 

final ArrayAdapter<String> aa; 

aa = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, prayers); 

myListView.setAdapter(aa); 



SharedPreferences prayerRequests = getPreferences(Activity.MODE_PRIVATE); 

ListView myListViewa = (ListView)findViewById(R.id.myListView); 

SharedPreferences.Editor editor = prayerRequests.edit(); 

editor.putString("prayers", myListViewa.toString()); 

editor.apply(); 






myEditText.setOnKeyListener(new View.OnKeyListener() { 
    public boolean onKey(View v, int keyCode, KeyEvent event) { 
     if (event.getAction() == KeyEvent.ACTION_DOWN) 
      if ((keyCode == KeyEvent.KEYCODE_DPAD_CENTER) || 
        (keyCode == KeyEvent.KEYCODE_ENTER)) { 

       prayers.add(0, myEditText.getText().toString()); 
       aa.notifyDataSetChanged(); 
       myEditText.setText(""); 
       return true; 

      } 
     return false; 
    } 
}); 


} 


} 

답변