function
이 내 모든 사이에 상수 인 function
을 갖고 싶습니다. MainActivity
에 있습니다. Fragment
은 실행중인 기능을 알지 못하기 때문에 데이터를 active
Fragment
으로 전달하는 방법을 잘 모르겠습니다.안드로이드 - 주요 활동에서로드 된 단편으로 데이터를 보내는 방법
나는 MainActivity
의 interface
만드는 시도하고 Fragment
implement
MainActivity.OnDataPass
을 가지고있다. 하지만 MainActivity
에서 인터페이스를 시작하는 방법은 확실하지 않습니다. NullPointerException
이 계속 나타납니다. 내 주요 활동에서
:
public class Mainactivity extends FragmentActivity{
OnDataPass dataPasser;
BroadcastReceiver receiver;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String str = intent.getStringExtra("data");
dataPasser.onDataPass(str);
}
};
}
public interface OnDataPass {
public void onDataPass(String data);
}
}
내 조각에서
public class Storage extends Fragment implements Mainactivity.OnDataPass{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
mrootview = (ViewGroup) inflater.inflate(R.layout.storage, container, false);
return mrootview;
}
@Override
public void onDataPass(String data) {
Log.v(TAG, data);
}
}
나는 심지어 궤도에 오전 또는 조각에 데이터를 전송하는 더 좋은 방법이 있나요? 당신은 꽤 멀리 이미
당신이 데이터를 보내시겠습니까? 프래그먼트를 만들 때'args'를 통해 전달하거나'FragmentManager'를 사용하여 인스턴스를 얻고 네 인터페이스를 사용할 수 있습니다. 여러분의 질문에 핵심 코드 조각이 없다고 느낄 때' onDataPass' – Blundell
@Blundell dataPasser를 동적으로 설정하는 구문을 알고 있습니까? 아니면 저장을 위해 어떻게 설정하겠습니까? – K3NN3TH