我想将数据从MainActivity传递给片段我用它来执行我的操作
switch (txt.getText().toString()){
case "Jumlah(Tinggi-Rendah)":
dialog.dismiss();
cond = "desc";
by = "jumlah";
Log.e("By1 : ", ""+by );
Intent intent = new Intent("KEY");
sendBroadcast(intent);
return;
这是我的获取字符串
public String getDataAkun(){
return idakun;
}
public String getDataBy(){
return by;
}
这是我片段中的脚本
MainActivity activity = (MainActivity) getActivity();
idakun = activity.getDataAkun();
by = activity.getDataBy();
这是我的广播
private BroadcastReceiver updateProfileBroadcast = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
//Fire your event
list_transaksi();
Toast.makeText(getContext(),"huft :"+by+" - "+idakun,Toast.LENGTH_LONG).show();
}
};
当我开始行动时,#id; idakun"谁得到了数据但是" by"正在返回null
enter image description here 我是关于Android编程的新手,所以如果有任何帮助请...
答案 0 :(得分:0)
要将数据从活动发送到片段,只需创建一个Bundle并在其中放入必需的参数,并在附加或替换该片段时在fragment.setArguments()中设置该包。
以下是一个例子:
Bundle bundle = new Bundle();
bundle.putInt("Key", 2);
Fragment frag = new YourFragment();
frag.setArguments(bundle);
--> then add or replace fragment as you want.
更新:在你的片段的onCreate()方法下面放置代码:
Bundle bundle = getArguments(); int i = bundle.getInt(" key");
仍然不清楚,然后在下面评论。