我是新来的Java和Android,其实我被困在一个问题,之前下投票或将其标记为重复,尽力帮助我解决这个风暴...如何从一个方法传递一个字符串变量主要方法
我将说明我的概念。我有一个网页浏览片段,我有一个按钮。当用户在浏览时单击该按钮时,当前网址将通过使用接口like this从片段传递到主要活动。我希望在下次用户打开应用程序时(它应该加载上次从片段传递的网址)将传递的网址作为默认地址。
这是怎么怎么我从片段传递Web地址URL
主活动
@Override
public void onHomeClick(String pasedurl) {
// now URL having the web address
URL= pasedurl;
//trying to save URL for the next time use
final String MY_PREFS_NAME = "MyPrefsFile";
SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit();
editor.putString("name", URL);
editor.commit();
SharedPreferences prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE);
String restoredText = prefs.getString("name", null);
if (restoredText == null) {
String name = prefs.getString("name", "No name defined");
Toast.makeText(getApplicationContext(), name, Toast.LENGTH_LONG).show();
}
下一步我把从主要活动传递一个URL字符串到下一次的网络片段 所以它会打开它被保存在网络地址之前
我这是怎么传递的字符串URL从主要活动片段
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState)
//passing the sting 'name'
Bundle bundle=new Bundle();
bundle.putString("url", name);
final Radio radio=new Radio();
radio.setArguments(bundle);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
//other stuff
}
,我接收网络的片段像this`
final WebView view=(WebView) rootView.findViewById(R.id.webView);
String url = getArguments().getString("url");
view.loadUrl(url);
所以现在我会告诉你我想要什么。我想从共享优先于bundle.so网页片段通过保存的字符串URL可以捕获它,或者我要让敬酒从主要活动像
Toast.makeText(getApplicationContext(), name, Toast.LENGTH_LONG).show();
,所以我会去了解保存的网址是最后一次, 我怎样才能做到这一点 ?请帮我........
为什么要传递sharedpreferences捆绑访问? sharedpreferences也可以访问片段.. – ZeroOne
我不知道,我该怎么做?你可以帮忙吗?@ –
SharedPreferences shared = getActivity()。getSharedPreferences(MY_PREFS_NAME,MODE_PRIVATE); String url = shared.getString(“name”,null); – ZeroOne