'홈'이라는 액티비티가 있습니다. 로그인 후이 활동으로 리디렉션됩니다. 이 액티비티에서는 두 조각 (Header & footer)을 이러한 방식으로 구현합니다.android에서 액티비티의 데이터를 조각으로 전달하는 방법
View header = inflater.inflate(R.layout.fragment_header_fragement, null);
View footer = inflater.inflate(R.layout.fragment_footer, null);
mDrawerListView.addHeaderView(header);
mDrawerListView.addFooterView(footer);
그리고 '홈'활동에 구현 된 헤더 조각에 주로 표시하고 싶습니다. 일부 데이터는 로깅 활동에서 전송됩니다. 제가 조금은 검색 한 문제는, 우리는 단지 주된 활동에서 단편을 추가하거나 대체 할 수 있다는 것을 발견했습니다. 다른 단편에서는 그렇지 않습니다. 나는 해결책을 모으려고했지만 아직은 안된다. 이건 내 코드입니다 :
@Override
protected void onPostExecute(final String res) {
//LoginTask = null;
//showProgress(false);
try {
jObj = new JSONObject(res);
} catch (JSONException e) {
e.printStackTrace();
}
try {
if (jObj.getString("code").equals("1")) {
infos = new Bundle();
infos.putString("ID",jObj.getString("ID"));
infos.putString("Name",jObj.getString("display_name"));
infos.putString("ImgUrl","http://unchained-network.com/uploads/profilpics/53f5c570b6ac2.png");
android.support.v4.app.FragmentTransaction tr = getSupportFragmentManager().beginTransaction();
HeaderFragement hf = new HeaderFragement();
//Charger les infos dans l'activité
hf.setArguments(infos);
tr.add(R.id.frgmnt,hf);
tr.commit();
Intent myIntent = new Intent(getActivity(), HomesActivity.class);
//Lançer l'activité
startActivityForResult(myIntent, 0);
} else {
//password.setError(getString(R.string.error_incorrect_password));
//password.requestFocus();
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Error !");
builder.setMessage("The information entered is incorrect.\nPlease try again!")
.setCancelable(false)
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});
AlertDialog alert = builder.create();
alert.show();
}
} catch (JSONException e) {
e.printStackTrace();
}
}
그리고 이것은 내가 조각
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
name = (TextView) getView().findViewById(R.id.nameH);
img = (ImageView) getView().findViewById(R.id.imageViewHeader);
Bundle infos = getArguments();
name.setText(infos.getString("Name"));
img.setImageBitmap(getBitmapFromURL(infos.getString("ImgUrl")));
}
로 데이터를 추출하는 방법이다 그래서 모든 솔루션 바랍니다. 감사합니다.
문제는 내 두 단편이 독립적이고, 집에서 조각으로 데이터를 전달해야한다고 말합니다. 내가 로그인에서 조각으로 직접 전달하려는 경우 똑같은 것 같아요. 나의 조각들은 홈 활동으로 구현되지만 분리되어 있습니다. –
분리 된 것은 무엇을 의미합니까? –
HeaderFragment (클래스 및 레이아웃)를 만들고 동일한 방법으로 바닥 글을 내비게이션 서랍에 구현 한 후 홈 액티비티 –