조각을 변경 한 후 (아래 스 니펫 에서처럼) 해당보기 중 하나에 표시되는 텍스트를 업데이트하고 싶습니다.조각에서 텍스트 업데이트가 작동하지 않습니다.
Fragment fragment = new LoadingScreen();
String loadScreenTag = "FLSTAG";
getFragmentManager()
.beginTransaction()
.setCustomAnimations(R.animator.card_flip_right_in, R.animator.card_flip_right_out,
R.animator.card_flip_left_in, R.animator.card_flip_left_out)
.replace(R.id.main_activity_frame, fragment, loadScreenTag)
.commit();
LoadingScreen lScreen = (LoadingScreen) getFragmentManager().findFragmentByTag(loadScreenTag);
lScreen.writeText("some text that does not work");
내부 LoadingScreen 나는 WRITETEXT 당신이, 내가 (조각이 화면 전체를 차지, 그래서 단지가 조각 사이에 변경할 수 card_flip 애니메이션을 사용하고 볼 수 있듯이
public void writeText(String msg) {
if (mainView != null) {
mainView.setText(msg);
} else {
Log.e(LOG_TAG, "mainView is null at this point");
}
}
를 정의 하나는 언제든지 볼 수 있음).
이전 조각이 다른 LoadingScreen 인 경우 코드가 작동하지 않습니다 (충돌/오류가없고 단순히 textView를 업데이트하지 않음).
- 방금 교체 한 LoadingScreen의 textView를 업데이트한다고 가정합니다. 왜 이런 일이 일어나는 걸까요?
이전 조각이 다른 조각이라면 작동하지만 불편할 정도로 느립니다. 왜 그렇게 느린가요?
writeText()를 호출 할 때 조각보기가 아직 작성되지 않았습니다 (onCreateView) ... 호출하기 전에 Handler를 사용하여 몇 초간 기다려보십시오. 문제가 될 수 있습니다. – Jaythaking