다른 애플리케이션에서받은 메시지를 수신하는 응용 프로그램에서 블루투스 서비스로 작업하고 있습니다. 내 FragmentActivity에서, 나는이 메시지를 얻을 수있는 핸들러를 사용하고 있습니다 :데이터를 단편 작업에서 단편으로 전송
FragmentActivity : 나는 데이터를 얻을 수와 조각에 전송하고자하는이 Handler에서
public final Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
//my code
case MESSAGE_READ:
byte[] readBuf = (byte[]) msg.obj;
byte[] alpha = null;
alpha=readBuf;
if(alpha!=null){
//my code..
}
}
}
. 나는 번들을 사용하려했지만 작동하지 않습니다 ..
내가 노력 코드 : FragmentActivity에서
:
Intent intent = new Intent();
intent.setClass(getApplicationContext(), General.class);
Bundle bundle=new Bundle();
bundle.putInt("battery", bat);
intent.putExtra("android.intent.extra.INTENT", bundle);
조각에서 :
이Bundle bundle = getActivity().getIntent().getExtras();
if (bundle != null) {
int mLabel = bundle.getInt("battery", 0);
Toast.makeText(getActivity(), "tottiti: "+mLabel, Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(getActivity(), "prout", Toast.LENGTH_SHORT).show();
}
응용 프로그램입니다 "prout"을 반환합니다. 즉, FragmentActivity에서 데이터를 가져올 수 없습니다.
fragmentActivity에서 데이터를 가져 와서 조각으로 전송하는 다른 방법이 있습니까?
는 작성시 조각에 데이터를 전달할 필요가 있다고 가정하면 당신의 도움이
사실 배터리 데이터를 보려면 내 옵션 메뉴 (내 FragmentActivity에 있음)에서 연결된 장치의 배터리 상태를 가져 오는 버튼을 사용해야합니다. 그럼 내 조각에는 버튼이 있습니다.이 버튼을 클릭하면 fragmentActivity에서 얻은 배터리 상태 값을 프로그램에서 얻으려고합니다. 코드를 변경했지만 작동하지 않습니다. – Mirelvi
ft.add (R.id.fragment_container, fragment)를 사용할 수 없습니다. 왜냐하면 나는 내 조각을위한 ID를 정의하지 않았기 때문이다. 이 버튼을 사용하여 데이터를 가져와야하기 때문에 생성시 데이터를 가져올 수 없습니다. – Mirelvi
활동에 배터리 데이터를 저장하려고합니다. 'FragmentActivity'에 옵션 메뉴를 클릭하면 거기에 데이터를 저장하는 필드가 있습니다. 그런 다음'Fragment' 버튼을 클릭하면 해당 필드를 읽을 수 있습니다 :'((MyActivity) getActivity()). getBatteryData()' –