2014-10-09 63 views
1

我有一組單選按鈕,每個單選按鈕都有一個編輯文本,我想在退出焦點時保存編輯文本值或單選按鈕值,當焦點關閉時執行自動保存。 請幫助我。自動保存編輯文本值和單選按鈕

在此先感謝。

+1

** @圖沙·帕蒂爾**您可以輕鬆地得到你的答案上演示教程......而這個問題可以複製。所以在研發之後提出你的問題。會幫助你...... – 2015-06-11 11:54:19

回答

0

這裏是您的要求的答案。

edit_Text.setOnFocusChangeListener(new OnFocusChangeListener() { 
@Override 
public void onFocusChange(View v, boolean hasFocus) { 
if(hasFocus){ 
    Toast.makeText(getApplicationContext(), "got the focus",  Toast.LENGTH_LONG).show(); 
}else { 
    Toast.makeText(getApplicationContext(), " auto save Here",  Toast.LENGTH_LONG).show(); 
} 

} });

希望這會有所幫助。

+0

謝謝......!它的工作 – 2014-10-09 13:42:51

+0

,你歡迎親愛的,請標記答案接受和增加點。 – khurram 2014-10-09 13:44:53

1

您可以使用TextWatcheronTextChangedbeforeTextChangedafterTextChanged之後執行某些操作。

這是一個例子:

  final EditText ed = findViewById(R.id.edittext); 
      final TextView tv = findViewById(R.id.textview); 

      ed.addTextChangedListener(new TextWatcher() { 

       @Override 
       public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { 

       } 

       @Override 
       public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, 
         int arg3) { 

       } 

       @Override 
       public void afterTextChanged(Editable arg0) { 
        //Save Your Text With SharedPreference 
        SharedPreferences sp = getSharedPreferences("TEST", 0); 
        SharedPreferences.Editor ed_sp = sp.edit(); 
        ed_sp.putString("myText", ed.getText().toString()); 
        ed_sp.commit(); 
        ShowSavedText(); 

       } 
       void ShowSavedText(){ 
        SharedPreferences sp = getSharedPreferences("TEST", 0); 
        String savedText = sp.getString("myText", ""); 
        tv.setText(savedText); 
       } 
      }); 
+0

你確定,你的方法'ShowSavedText'屬於'TextWatcher'嗎?我會把這種方法放在匿名類之外。 – winklerrr 2017-03-24 10:53:12