我有一个包含一些片段的活动。其中一个片段称为另一个活动。在这个新活动中,我需要有第一个活动的实例。 GetParent()返回null,所以我不知道如何实现这个......
MainActivity --contains - > Fragment1 --startActivity() - >的 SecondaryActivity
有没有办法在SecondaryActivity上获取调用活动?
答案 0 :(得分:2)
我不认为这样做有好办法。
处理这样的活动引用确实是一种不好的做法,因为android在需要时无法gc它们(方向改变,内存不足)。
最好的方法是使用var httpWebRequest = (HttpWebRequest)WebRequest.Create("http://url");
String username = "abc";
String password = "123";
String encoded = Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes(username + ":" + password));
httpWebRequest.Headers.Add("Authorization", "Basic " + encoded);
httpWebRequest.ContentType = "application/json";
httpWebRequest.Method = "POST";
个附加内容传递所需的所有数据(用于启动活动的目的),如果需要 SecondActivity 来返回内容,请使用{{1} }用于启动活动,完成后,使用Intent
返回所需的结果,您需要覆盖Fragment1.startActivityForResult()
以获得结果(有很多关于此的教程)。
如果您绝对需要保留对某些内容的引用,则可以使用您自己的SecondActivity.setResult()
类实例(不要忘记在清单中声明它),以便在应用程序运行时为您保存数据。