0
A
回答
1
这一切都取决于你想要的片段或弹出窗口之间传递到活动 一种方式是什么样的数据可以被使用意图
//create an Intent object
Intent intent=new Intent(context, Activity.class);
//add data to the Intent object
intent.putExtra("text", "Data");
//start the second activity
startActivity(intent);
和接收意图数据使用
getIntent().getStringExtra("text")
另一种方式可以使用共享首选项
SharedPreferences prefs = this.getSharedPreferences(
"com.example.app", Context.MODE_PRIVATE);
要阅读完成rences: String dateTimeKey =“com.example.app.datetime”;
//使用默认值,使用新的Date()
long l = prefs.getLong(dateTimeKey, new Date().getTime());
编辑和保存喜好
Date dt = getSomeDate();
prefs.edit().putLong(dateTimeKey, dt.getTime()).apply();
1
- 在片段,创建一个接口(姑且称之为
VariableCallback
为现在)使用一种返回类型void
的一种方法,该参数需要一个与变量相同的参数 generatin G。我们来调用方法onVariableGenerated
。 - 使活动托管碎片实现该接口。在
VariableCallback
类型的片段中创建 字段。我们称之为callback
。 - 覆盖片段的
onAttach(Context context)
方法,并将字段设置为指向上下文。确保您 将上下文投射到VariableCallback
。现在 - ,当片段 产生的变量,你可以打电话
callback.onVariableGenerated(myVariable)
,以及将在 变量传递到承载片段的活性。 - 确保您 覆盖片段的
onDetach()
方法将callback
字段设置为空。这将防止活动的内存泄漏。
0
回答有点晚了,但有一个越多,你能做到这一点,我能想到的办法:本地广播
你可以使用一个LocalBroadcast经理和BroadcastListener活动中,从发送LocalBroadcast popupwindow:
在主要活动,你可以这样做:
LocalBroadcastManager localBroadcastManager =
LocalBroadcastManager.getInstance (getApplicationContext());
BroadcastReceiver popupdatareceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
...
// code to handle received data goes here
}
}
};
localBroadcastManager.registerReceiver (popupdatareceiver, new IntentFilter ("popupdata"));
从PopupWindow您可以发送本地广播,像这样:
Intent popupdataIntent = new Intent ("popupdata");
Bundle popupdataBundle = new Bundle();
...
// now add your data to the Bundle here
...
popupdataIntent.putExtra ("popupdata", popupdataBundle);
将数据发送到活动中,你需要初始化LocalBroadcastManager实例,并火了广播 - 这可以通过一个按钮的OnClickListener被触发,或由PopupWindow的OnDismissListener
LocalBroadcastManager newLocalBroadcastManager =
LocalBroadcastManager.getInstance (getApplicationContext());
newLocalBroadcastManager.sendBroadcast (popupdataIntent);
相关问题
- 1. 如何将片段中的点击事件传递给Container活动?
- 2. 将方法中的变量传递给按钮单击事件
- 3. 将活动值传递给片段android
- 4. Android,将活动传递给片段活动,片段
- 5. 将参数传递给Prism弹出窗口的正确方法
- 6. Chrome扩展程序:将变量传递给弹出窗口
- 7. 如何将变量传递给ColourBox内联弹出窗口?
- 8. 将弹出式窗口变量传递给调用者
- 9. 使用Javascript将变量传递给弹出窗口
- 10. Android:将数据从弹出窗口传递到父项活动
- 11. 将参数传递给弹出窗口?
- 12. 将活动传递给片段
- 13. 从弹出窗口中的值传递给父窗口
- 14. 将活动片段的int值传递给另一片段
- 15. 将php变量传递给动态生成的div的onclick事件
- 16. 将窗口句柄传递给变量
- 17. 点击时将div变量中的PHP变量传递给jquery
- 18. Android:从片段或活动中的片段接收点击事件?
- 19. 如何将函数变量传递给点击事件jquery?
- 20. Javascript,将一个变量传递给点击事件?
- 21. 如何将CommandArgument传递给DotNetNuke中的弹出窗口
- 22. 将弹出窗口中的数据传递给javascript
- 23. 通过接口将片段/活动中的数据传递给片段/活动的名称技术
- 24. 将属性值从弹出窗口传递给父窗口:javascript
- 25. 如何将数据从弹出窗口传递给父窗口?
- 26. 将活动中的对象传递给ViewPager,然后传递给片段
- 27. 如何检测弹出窗口中的点击事件? (Swift)
- 28. 在弹出的父窗口中触发点击事件
- 29. 如何提高弹出窗口中按钮的点击事件?
- 30. 将nil分配给传递给方法的成员变量
那么情况如何,那么poupwindow或fragment需要活动中的信息? ((Activity)getActivity())。functionCall();在这里工作? – kilokahn