我在存储变量如何在另一个Android层中对它们进行排序时存在危机。
我有五(5)个android层,并存储第一层和第二层的变量,以显示最后一层(5)中的变量。
提示 这层是片段。
捕获(1)(2)..跳转数据到(5)
Bundle对我来说不起作用,因为我只是从片段到片段。
此方法是否适用于共享首选项?
还有其他方法吗?
谢谢!
答案 0 :(得分:0)
我无法判断"此方法是否使用共享首选项?"意味着你已经或者你没有尝试使用SharedPreferences,但我认为你没有。
SharedPreferences存储在键值对中。所以我认为这对你来说是一个很好的选择。
有很多很棒的教程,但是很棒的教程是这样的: https://www.youtube.com/watch?v=fJEFZ6EOM9o
以下是更多文档的链接: https://developer.android.com/reference/android/content/SharedPreferences.html
希望有所帮助:)
答案 1 :(得分:0)
是的,您可以将数据存储在共享首选项中。您可以使用默认共享偏好设置将数据保存在一个和两个层中,如下所示:
char * b_location(Buffer * const pBD, short loc_offset) {
if (!pBD)
return NULL;
/* Make sure loc_offset doesn't go beyond the length of the array */
if( ! in_bounds )
return NULL;
return &(pBD->cb_head[loc_offset]);
}
然后在第五层(片段)中,只需读取值:
SharedPreferences prefs = SharedPreferenceManager.getDefaultSharedPreferences(this);
prefs.edit().putInt("my value", someValue).apply();
根据您的需要调整代码。
答案 2 :(得分:0)
Shure终于学会使用共享首选项将数据跳转到愿望布局
原始布局
// DECLARE VARIABLES
//Shared Preferences
public static final String SHARED_PREFS_FILE = "sharedPrefs";
public static final String KEY_TEXT ="text";
//在项目中实施方法
newListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
//IN MY ONITEMCLICK
SharedPreferences sharedPreferences = getContext().getSharedPreferences(SHARED_PREFS_FILE, 0);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString(KEY_TEXT, "string_to_update");
editor.commit();
}
});
//收到数据的层
投入onNewCreate
@覆盖 public View onCreateView(LayoutInflater inflater,ViewGroup容器, Bundle savedInstanceState){ //为此片段扩充布局 查看view = inflater.inflate(R.layout.fragment_nueva_medicion,container,false);
//SHOW DATA
muestraCliente = view.findViewById(R.id.textvCliente);
ShowClienteFragment scf = new ShowClienteFragment();
SharedPreferences sharedPreferences = getContext().getSharedPreferences(SHARED_PREFS_FILE, 0);
cliente = sharedPreferences.getString(KEY_TEXT,"");
showData.setText(cliente);
return view;
}