android - 如何在 fragment 中创建 editText

标签 android android-fragments android-edittext

我想在 fragment 中创建可编辑的文本字段,在应用程序关闭或停止后将被保存。但是有一些错误符合 return notatki; 我已经有了这个:

public class DetailFragment2 extends Fragment {

    private EditText notatki;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Log.e("Test", "hello");


    }     
    @SuppressLint("SimpleDateFormat")
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup parent,
            Bundle savedInstanceState) {

        View view = inflater.inflate(R.layout.details2, parent, false);
        notatki = (EditText) view.findViewById(R.id.editText1);
        SharedPreferences settings = this.getActivity().getSharedPreferences("PREFS", 0);
        notatki.setText(settings.getString("value", ""));
        return view;
    }  
    @Override
    public void onStop( ){
        super.onStop();
        if(notatki.getText() != null) {
            SharedPreferences settings = this.getActivity().getSharedPreferences("PREFS", 0);
            SharedPreferences.Editor editor = settings.edit();
            editor.putString("value", notatki.getText().toString());
            editor.commit();
        }
    }
}

当我将 return notatki; 更改为 return view; 它一直有效直到应用程序停止,当我想保存 editText 的内容但它没有保存任何内容时.

最佳答案

更改为

private EditText notatki;
@SuppressLint("SimpleDateFormat")
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup parent,
        Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.details2, parent, false);
        notatki = (EditText) view.findViewById(R.id.editText1);
        SharedPreferences settings = this.getActivity().getSharedPreferences("PREFS", 0);
        notatki.setText(settings.getString("value", ""));

  return view; // return view here instead of notaki
}   

您已经将 EditText 声明为类成员

 private EditText notatki;

所以只需在onCreateView中初始化即可。

关于android - 如何在 fragment 中创建 editText,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19949677/

相关文章:

android - 需要复杂的 Android UI 设计指导( fragment )

android - 显示空白灰色 map 的谷歌地图 fragment

android - 如何使用和编辑文本输入作为开关的 int

android - 在 recyclerview 中提交列表后强制编辑文本以移除焦点

如果 Android Html.fromHtml() 以 <p> 标签开头,它会丢失 HTML

javascript - 具有 WebView 和 native View 的混合应用程序的优缺点是什么?

android - 应用程序使用非常简单的代码意外关闭

android - 在Android NDK下,是否可以在不调用Java来检索表面的情况下创建 native 窗口?

android - 如何从 View 寻呼机中的第一个 fragment 选项卡调用第二个 fragment 选项卡

android - 有没有办法修复 EditText 中的字母宽度?