android_learning:headfirst_android_development_notes:chapter_8
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
android_learning:headfirst_android_development_notes:chapter_8 [2016/02/21 02:46] – [pp. 335-336: Code block] mithat | android_learning:headfirst_android_development_notes:chapter_8 [2016/02/21 04:24] (current) – [On Android fragment managers] mithat | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | <WRAP center round info 60%> | ||
- | Under development. | ||
- | </ | ||
- | |||
====== Chapter 8 ====== | ====== Chapter 8 ====== | ||
Line 171: | Line 167: | ||
//rant: on// | //rant: on// | ||
- | Given my current understanding of Android, I think the way it deals with nested fragments is pretty awful. The concepts are ok-ish, but the implementation is confusing. | + | Given my current understanding of Android, I think the way it deals with nested fragments is pretty awful. The concepts are ok-ish, but the implementation is confusing. |
+ | Some key points are: | ||
* There are two different fragment manager retrieval functions---one for Activities and another for Fragments. | * There are two different fragment manager retrieval functions---one for Activities and another for Fragments. | ||
* '' | * '' | ||
- | * '' | + | * '' |
It's awkward to need two different function names for these two very similar cases, but fine. What I think is really awful is the naming of the functions: '' | It's awkward to need two different function names for these two very similar cases, but fine. What I think is really awful is the naming of the functions: '' | ||
- | I suspect the reason for this is that the AOSP developers didn't fully think through things when they introduced | + | I suspect the reason for requiring two different functions |
//rant: off// | //rant: off// | ||
+ | |||
+ | ===== p. 342 Code block ===== | ||
+ | <code java> | ||
+ | FragmentTransaction ft = getChildFragmentManager().beginTransaction(); | ||
+ | StopwatchFragment stopwatchFragment = new StopwatchFragment(); | ||
+ | ft.replace(R.id.stopwatch_container, | ||
+ | ft.addToBackStack(null); | ||
+ | ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE); | ||
+ | ft.commit(); | ||
+ | </ | ||
+ | |||
+ | ===== p. 350: Code block ===== | ||
+ | <code java> | ||
+ | switch (v.getId()) { | ||
+ | case R.id.start_button: | ||
+ | onClickStart(v); | ||
+ | break; | ||
+ | case R.id.stop_button: | ||
+ | onClickStop(v); | ||
+ | break; | ||
+ | case R.id.reset_button: | ||
+ | onClickReset(v); | ||
+ | break; | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ===== p. 351: Code block ===== | ||
+ | <code java> | ||
+ | Button startButton = (Button)layout.findViewById(R.id.start_button); | ||
+ | startButton.setOnClickListener(this); | ||
+ | Button stopButton = (Button)layout.findViewById(R.id.stop_button); | ||
+ | stopButton.setOnClickListener(this); | ||
+ | Button resetButton = (Button)layout.findViewById(R.id.reset_button); | ||
+ | resetButton.setOnClickListener(this); | ||
+ | </ | ||
+ | |||
+ | ===== p. 356-358 ===== | ||
+ | The takeaway from this section is that the host Activity' | ||
+ |
android_learning/headfirst_android_development_notes/chapter_8.1456022819.txt.gz · Last modified: 2016/02/21 02:46 by mithat