Slide 1

Slide 1 text

ଓɾandroid:layout_weight Λ࢖͏ͱ ΞϓϦ͕ॏ͘ͳΔͷ͔ʁ ؔ੢ϞόΠϧΞϓϦݚڀձ #18
 2016 ೥ 9 ݄ 28 ೔ʢਫʣ 1

Slide 2

Slide 2 text

͓඼ॻ͖ 1. ࣗݾ঺հ 2. ଓɾandroid:layout_weight Λ࢖͏ͱ
 ΞϓϦ͕ॏ͘ͳΔͷ͔ʁ 3. ඳը࣌ؒͷܭଌɾൺֱ ⏱ 4. ૯·ͱΊ 2

Slide 3

Slide 3 text


 ⚠ WARNING ⚠
 ※ umeda.apk #1 & #2 Ͱͷ LT ࢿྉ͕
 ਵॴͰ࢖͍ճ͞Ε͍ͯ·͢ 3

Slide 4

Slide 4 text

ࣗݾ঺հ ڮ౓๎໻ʢ͸͠Ͳͱ΋΍ɺ1990 ೥ 7 ݄ 15 ೔ - ʣ 2014 ೥Ҏ߱ɺ೥ؒͰϓϦΫϥΛࡱΔ
 ճ਺͕ࣗݾϕετΛߋ৽͠ଓ͚͍ͯ·͢ 
 ʢࠓ೥͸طʹ 4 ճࡱӨʣ ීஈΑ͘Ӿཡ͍ͯ͠ΔΞϓϦ͸
 ϑϦϡʔ ͷʮϐΫτϦϯΫʯͰ͢ 4

Slide 5

Slide 5 text

өըʰԿऀʱͷܶதΧοτʹөΓࠐΜͰ͍·ͨ͠ 
 ʢөըφλϦʔ http://natalie.mu/eiga/news/197940 ΑΓʣ 2016 ೥ 10 ݄ 15 ೔ʢ౔ʣΑΓશࠃͰϩʔυγϣʔ 5

Slide 6

Slide 6 text

ຊ୊ ViewGroup ͕ωετ͍ͯ͠Δঢ়ଶͰ LinearLayout ͷ layout_weight Λ࢖͏ͱΞϓϦ͕ॏ͘ͳΔͷ͔ʁ 6

Slide 7

Slide 7 text

Android Studio 2.2 ʹͯ ConstraintLayout ͕
 ࢖͑ΔΑ͏ʹͳΓ·ͨ͠ ͦΕʹΑΓ LinearLayout
 ͳͲͷݹࢀ ViewGroup ͨͪ
 ͸ΦϫίϯʹͳΔͷ͔ʁ 7

Slide 8

Slide 8 text

Android Developers ʰϨΠΞ΢τ֊૚ͷ࠷దԽʱ https:// developer.android.com/ training/improving-layouts/ optimizing-layout.html “Furthermore, nesting several instances of LinearLayout that use the layout_weight parameter can be especially expensive as each child needs to be measured twice.” 8

Slide 9

Slide 9 text

2016 ೥ 6 ݄ 17 ೔ʢۚʣ umeda.apk #1 ʹͯ 5 ෼ൃද࿮Ͱʮandroid:layout_weight Λ࢖͏ͱΞϓϦ͕ॏ͘ͳΔͷ͔ʁʯ
 ͱ͍͏ LT Λ͠·ͨ͠ LT ऴྃޙʮlayout_weight Ͱඳը ͕ॏ͘ͳΔͷ͸ ViewGroup ͕ωε τ͍ͯ͠Δ৔߹Ͱ͸ʁʯͱ͍͏ࢦఠΛ ड͚ͨͷͰ࠶ݕূͯ͠Έ·ͨ͠ ⌨ 9

Slide 10

Slide 10 text

ૣ଎ݕূͯ͠ΈΑ͏ layout_weight Λ࢖͏ํ๏ͱଞͷํ๏Ͱ
 ViewGroup ͕ωετͨ͠ಉ͡ϨΠΞ΢τΛ࡞੒ ͦΕΛ ListView ͷηϧͱͯ͠࢖༻
 ʢRecyclerView ͸ษڧதʣ Hierarchy Viewer ͰϨΠΞ΢τશମͷඳը࣌ؒΛܭଌ ⏳ ࣮ࡍʹεΫϩʔϧͯ͠ॏ͞Λ֬ೝ 0↕ 10

Slide 11

Slide 11 text

Hierarchy Viewer ͱ͸ʁ ϨΠΞ΢τඳըʹ͔͔Δ
 ࣌ؒΛදࣔͯ͘͠ΕΔ Android Device Monitor
 ͔Β࢖༻Մೳ ⭕ ࣮୺຤Ͱ࢖༻͢Δʹ͸Ұखؒඞཁ http://vividcode.hatenablog.com/ entry/android-app/tools/ hierarchy-viewer 11

Slide 12

Slide 12 text

؀ڥ MacBook Pro (2014)  Android Studio 2.1.1 ΤϛϡϨʔλ 480×800 hdpi (Nexus One) Android 6.0 (x86_64) 12

Slide 13

Slide 13 text

Button Λ ԣʹ 5 ౳෼ͨ͠
 ϨΠΞ΢τΛ࡞੒
 ‑
 ඳը࣌ؒΛܭଌ 13 ˞ 1 ߦʹ Button ͕ 5 ݸೖͬͨ ListView ͷਤ

Slide 14

Slide 14 text


 
 
 
 
 
 
 
 
 
 
 
 
 
 
 5 Button 5 ౳෼ 3 ֊૚ωετ
 ιʔείʔυˍը໘ʢlayout_weightʣ 14

Slide 15

Slide 15 text

Measure Layout Draw ߹ܭ 1 ճ໨ 0.045 ms 0.758 ms 1.522 ms 2.325 ms 2 ճ໨ 0.045 ms 0.756 ms 1.479 ms 2.280 ms 3 ճ໨ 0.198 ms 1.125 ms 1.129 ms 2.452 ms 4 ճ໨ 0.045 ms 1.034 ms 2.242 ms 3.321 ms 5 ճ໨ 0.045 ms 1.042 ms 1.410 ms 2.497 ms ฏۉ 0.076 ms 0.943 ms 1.556 ms 2.575 ms 5 Button 5 ౳෼ 3 ֊૚ωετ
 ߹ܭ 97 views ܭଌ݁Ռʢlayout_weightʣ 15

Slide 16

Slide 16 text

6 Button 5 ౳෼ 3 ֊૚ωετ
 ιʔείʔυˍը໘ʢԣ෯Λ dp ࢦఆʣ 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 16

Slide 17

Slide 17 text

6 Button 5 ౳෼ 3 ֊૚ωετ ߹ܭ 97 views ܭଌ݁Ռʢԣ෯Λ dp ࢦఆʣ Measure Layout Draw ߹ܭ 1 ճ໨ 0.042 ms 0.187 ms 1.476 ms 1.705 ms 2 ճ໨ 0.184 ms 0.345 ms 2.205 ms 2.734 ms 3 ճ໨ 0.048 ms 0.316 ms 1.539 ms 1.903 ms 4 ճ໨ 0.050 ms 0.400 ms 1.784 ms 2.234 ms 5 ճ໨ 0.049 ms 0.341 ms 1.514 ms 1.904 ms ฏۉ 0.075 ms 0.318 ms 1.704 ms 2.096 ms 17

Slide 18

Slide 18 text

Button 5 ౳෼ 3 ֊૚ωετ
 ඳը଎౓·ͱΊʢAndroid 6.0ʣ ޡࠩͷൣғʢʁʣฏۉ஋Ͱ͸ͳ͘ 1 ճͷଌఆ஋Ͱ
 ൺֱ͢Δͱ݁Ռ͕มΘͬͯ͠·͏ ΤϛϡϨʔλͱ࣮୺຤ (Nexus 7) Ͱ ListView ΛεΫϩʔϧ ͤͯ͞Έͯ΋ҧ͍͕͋Δ͔͸ඍົͰ֬৴͕࣋ͯͳ͍ 0↕ layout_weight ԣ෯Λ dp ࢦఆ ߹ܭ࣌ؒͷฏۉ 2.575 ms 2.096 ms 18

Slide 19

Slide 19 text

ࢼ͞ΕΔ API Ϩϕϧᶸ14ᶹ͜ͱ Android 4.0 (Ice Cream Sandwich) ʹͯ Button Λԣʹ 5 ౳෼ˍ 3 ֊૚ωετͨ͠
 ϨΠΞ΢τͷੜ੒࣌ؒΛܭଌ ⏱ 19

Slide 20

Slide 20 text

5 Button 5 ౳෼ 3 ֊૚ωετ
 ߹ܭ 97 views ܭଌ݁Ռʢlayout_weightʣ Measure Layout Draw ߹ܭ 1 ճ໨ 0.355 ms 34.715 ms 42.180 ms 77 .250 ms 2 ճ໨ 0.467 ms 29.938 ms 46.369 ms 76.774 ms 3 ճ໨ 0.538 ms 32.001 ms 33.804 ms 66.343 ms 4 ճ໨ 0.458 ms 32.929 ms 34.624 ms 68.011 ms 5 ճ໨ 0.488 ms 24.862 ms 37 .005 ms 62.355 ms ฏۉ 0.461 ms 30.889 ms 38.796 ms 70.147 ms 20

Slide 21

Slide 21 text

6 Button 5 ౳෼ 3 ֊૚ωετ ߹ܭ 97 views ܭଌ݁Ռʢԣ෯Λ dp ࢦఆʣ Measure Layout Draw ߹ܭ 1 ճ໨ 0.514 ms 7 .439 ms 34.270 ms 42.223 ms 2 ճ໨ 0.462 ms 6.731 ms 35.968 ms 43.161 ms 3 ճ໨ 0.573 ms 7 .092 ms 32.675 ms 40.340 ms 4 ճ໨ 0.375 ms 6.028 ms 45.829 ms 52.232 ms 5 ճ໨ 0.383 ms 8.479 ms 52.771 ms 61.633 ms ฏۉ 0.461 ms 7 .154 ms 40.303 ms 47 .918 ms 21

Slide 22

Slide 22 text

Button 5 ౳෼ 3 ֊૚ωετ
 ඳը଎౓·ͱΊʢAndroid 4.0ʣ Android 4.0 Ͱܭଌ͢Δͱ෼͔Γ΍͍݁͢Ռ͕ग़ͨ ߹ܭ࣌ؒͷฏۉ஋Λൺֱ͢Δͱ໿ 20 ms ͷ͕ࠩ͋Δ ⏱ ΤϛϡϨʔλͱ࣮ػͰ ListView ΛεΫϩʔϧͤͨ͞ͱ͜Ζ ࣮ػͰ͸ layout_weight ͷํ͕͔ᷮʹॏ͍ؾ͕ͨ͠ 0↕ layout_weight ԣ෯Λ dp ࢦఆ ߹ܭ࣌ؒͷฏۉ 70.147 ms 47 .918 ms 22

Slide 23

Slide 23 text

ᶃ Button 5 ౳෼ʢAndroid 4.0ʣ
 ViewGroup 1 ֊૚ͱ 3 ֊૚ͷൺֱ umeda.apk #1 ͷ LT εϥΠυ͔Β ViewGroup 1 ֊૚Ͱ Button Λ
 5 ౳෼ͨ͠ϨΠΞ΢τͷฏۉඳը࣌ؒΛࢀরʢ˞ಉ͡؀ڥͰܭଌʣ https://speakerdeck.com/84d010m08/android-layout-weight- woshi-utoapurigazhong-kunarufalseka-deirekutazukatutoban? slide=26 layout_weight ԣ෯Λ dp ࢦఆ ViewGroup 1 ֊૚ 53.108 ms 45.866 ms ViewGroup 3 ֊૚ 70.147 ms 47 .918 ms 23

Slide 24

Slide 24 text

ᶄ Button 5 ౳෼ʢAndroid 4.0ʣ
 ViewGroup 1 ֊૚ͱ 3 ֊૚ͷൺֱ ViewGroup ͷωετ͕ਂ͘ͳͬͨͱ͖ͷඳը࣌ؒͷ૿Ճ཰͕
 ԣ෯ dp ࢦఆ ΑΓ layout_weight ͷํ͕ߴ͍͜ͱ͕෼͔Δ ωετͨ͠ LinearLayout ʹ layout_weight Λ࢖༻
 ͢Δͱࢠཁૉ͕ 2 ճଌఆ͞ΕΔʢެࣜυΩϡϝϯτΑΓʣ 24 ViewGroup 1 ˠ 3 ֊૚ͷඳը࣌ؒͷࠩ ԣ෯ dp ࢦఆ 2 ms ૿Ճ ↗ layout_weight 17 ms ૿Ճ ↗

Slide 25

Slide 25 text

૯·ͱΊ ViewGroup ͷωετঢ়گԼͰ layout_weight ʹ
 པΒ͟ΔΛಘͳ͘ͳͬͨ৔߹͸ ConstraintLayout ΍ PercentRelativeLayout ͷ࢖༻΋ݕ౼ͯ͠Έ·͠ΐ͏ ϨΠΞ΢τͷඳը଎౓Λ্͛ΔͨΊʹ ViewGroup ͷ
 ωετ͕ઙ͍ˍγϯϓϧͳσβΠϯΛ໨ࢦ͠·͠ΐ͏ Hierarchy Viewer Λ࢖ͬͯϨΠΞ΢τඳը଎౓ͷ
 ϘτϧωοΫʹͳ͍ͬͯΔ෦෼Λ୳ͯ͠Έ·͠ΐ͏ 25

Slide 26

Slide 26 text

fin. 26

Slide 27

Slide 27 text

Ϙπʹͨ͠εϥΠυ

Slide 28

Slide 28 text

PercentRelativeLayout Ͱ Button 5 ౳෼ 3 ֊૚ωετͷϨΠΞ΢τΛ࡞੒ͯ͠
 ඳը࣌ؒΛܭଌͯ͠Έͨ ⏱

Slide 29

Slide 29 text


 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


Slide 30

Slide 30 text

: Button 5 ౳෼ 3 ֊૚ωετ ߹ܭ 97 views ܭଌ݁ՌʢPercentRelativeLayoutʣ Measure Layout Draw ߹ܭ 1 ճ໨ 0.769 ms 71.907 ms 37 .750 ms 110.426 ms 2 ճ໨ 0.349 ms 45.133 ms 35.810 ms 81.292 ms 3 ճ໨ 0.624 ms 42.601 ms 38.598 ms 81.823 ms 4 ճ໨ 0.637 ms 36.907 ms 38.468 ms 76.012 ms 5 ճ໨ 0.430 ms 37 .507 ms 35.436 ms 73.373 ms ฏۉ 0.562 ms 46.811 ms 37 .212 ms 84.585 ms 30

Slide 31

Slide 31 text

Button 5 ౳෼ 3 ֊૚ωετ
 ඳը଎౓·ͱΊʢAndroid 4.0ʣ PercentRelativeLayout ͷඳը͕࣌ؒ࠷΋஗͍ͱ͍͏
 ݁Ռʹ ⏱ PercentRelativeLayout ͸ ViewGroup 1 ֊૚Ͱ৭ʑͳσ βΠϯ͕࠶ݱͰ͖ΔͷͰผʹେͨ͠໰୊Ͱ͸ͳ͍͔΋ layout_weight ԣ෯Λ dp ࢦఆ PercentRelative Layout ߹ܭ࣌ؒͷฏۉ 70.147 ms 47 .918 ms 84.585 ms 31

Slide 32

Slide 32 text

ViewGroup 5 ֊૚ωετͷ
 தͰ Button 5 ౳෼

Slide 33

Slide 33 text

5 5 ֊૚ωετ (layout_weight) 
 ιʔείʔυˍը໘ 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 33

Slide 34

Slide 34 text

Measure Layout Draw ߹ܭ 1 ճ໨ 0.043 ms 0.596 ms 1.542 ms 2.181 ms 2 ճ໨ 0.044 ms 1.249 ms 2.178 ms 3.471 ms 3 ճ໨ 0.050 ms 0.708 ms 2.144 ms 2.902 ms 4 ճ໨ 0.053 ms 0.735 ms 2.378 ms 3.166 ms 5 ճ໨ 0.060 ms 0.648 ms 1.404 ms 2.112 ms ฏۉ 0.050 ms 0.787 ms 1.929 ms 2.766 ms 5 5 ֊૚ωετ (layout_weight)
 ܭଌ݁Ռ 119 views 34

Slide 35

Slide 35 text

6 5 ֊૚ωετ (PercentRelativeLayout)
 ιʔείʔυˍը૾ 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 35

Slide 36

Slide 36 text

Measure Layout Draw ߹ܭ 1 ճ໨ 0.053 ms 0.672 ms 2.710 ms 3.435 ms 2 ճ໨ 0.049 ms 0.746 ms 3.131 ms 3.926 ms 3 ճ໨ 0.093 ms 0.962 ms 1.880 ms 2.935 ms 4 ճ໨ 0.051 ms 0.811 ms 2.422 ms 3.284 ms 5 ճ໨ 0.239 ms 0.614 ms 1.527 ms 2.380 ms ฏۉ 0.097 ms 0.761 ms 2.334 ms 3.192 ms 6 5 ֊૚ωετ (PercentRelativeLayout)
 ܭଌ݁Ռ 119 views 36

Slide 37

Slide 37 text

: 5 ֊૚ωετ (ԣ෯Λ dp ࢦఆ)
 ιʔείʔυˍը໘ 
 
 
 
 
 
 
 
 
 
 
 
 
 
 37

Slide 38

Slide 38 text

Measure Layout Draw ߹ܭ 1 ճ໨ 0.049 ms 0.264 ms 2.388 ms 2.701 ms 2 ճ໨ 0.042 ms 0.300 ms 2.328 ms 2.670 ms 3 ճ໨ 0.042 ms 0.329 ms 2.749 ms 3.120 ms 4 ճ໨ 0.049 ms 0.406 ms 2.272 ms 2.727 ms 5 ճ໨ 0.044 ms 0.242 ms 2.187 ms 2.473 ms ฏۉ 0.045 ms 0.308 ms 2.385 ms 2.738 ms : 5 ֊૚ωετ (ԣ෯Λ dp ࢦఆ)
 ܭଌ݁Ռ 119 views 38

Slide 39

Slide 39 text

5 ֊૚ωετඳը࣌ؒ
 ·ͱΊʢAndroid 6.0ʣ ޡࠩͷൣғʢʁʣ
 1 ճͷଌఆ஋Ͱൺֱ͢Δͱ݁Ռ͕มΘͬͯ͠·͏ ΤϛϡϨʔλͱ࣮୺຤ (Nexus 7) ͰεΫϩʔϧͤͯ͞Έͨ
 ͱ͜Ζɺҧ͍͕͋Δ͔͸ඍົͰ֬৴͕࣋ͯͳ͍ 0↕ layout_weight PercentRelative
 Layout ԣ෯Λ dp ࢦఆ ߹ܭ࣌ؒͷฏۉ 2.766 ms 3.192 ms 2.738 ms 39

Slide 40

Slide 40 text

5 ֊૚ωετඳը࣌ؒ
 ·ͱΊʢAndroid 6.0ʣ layout_weight=“1” ͸ઃఆͰ͖Δͱ͜Ζશͯʹઃ ఆ͠·ͨ͠ʢ9 ݸʣ Ռͨͯ͠ൺֱ͢Δ৚݅ͱͯ͠ਖ਼͍͠ͷ͔ʢʁʣ ϑΣΞʹͳ͍ͬͯΔͷ͔ʢʁʣͱ͍͏ٙ໰͕

Slide 41

Slide 41 text

5 5 ౳෼Λݸʑʹ 5 ֊૚ωετ (layout_weight) ιʔείʔυˍը໘ 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


Slide 42

Slide 42 text

Measure Layout Draw ߹ܭ 1 ճ໨ 0.182 ms 1.452 ms 3.140 ms 4.774 ms 2 ճ໨ 0.049 ms 1.410 ms 2.625 ms 4.084 ms 3 ճ໨ 0.183 ms 1.684 ms 2.743 ms 4.610 ms 4 ճ໨ 0.047 ms 1.634 ms 2.250 ms 3.931 ms 5 ճ໨ 0.047 ms 1.301 ms 2.250 ms 3.598 ms ฏۉ 0.102 ms 1.496 ms 2.602 ms 4.199 ms 5 5 ౳෼Λݸʑʹ 5 ֊૚ωετ (layout_weight) ܭଌ݁Ռ 295 views 42

Slide 43

Slide 43 text

Measure Layout Draw ߹ܭ 1 ճ໨ 0.045 ms 0.751 ms 2.399 ms 3.195 ms 2 ճ໨ 0.044 ms 1.032 ms 2.196 ms 3.272 ms 3 ճ໨ 0.041 ms 1.053 ms 1.396 ms 2.490 ms 4 ճ໨ 0.044 ms 0.992 ms 2.244 ms 3.280 ms 5 ճ໨ 0.045 ms 1.045 ms 2.763 ms 3.853 ms ฏۉ 0.044 ms 0.975 ms 2.200 ms 3.218 ms 6 5 ౳෼Λݸʑʹ 5 ֊૚ωετ
 (PercentRelativeLayout) ܭଌ݁Ռ 295 views 43

Slide 44

Slide 44 text

Measure Layout Draw ߹ܭ 1 ճ໨ 0.046 ms 0.472 ms 2.060 ms 2.578 ms 2 ճ໨ 0.045 ms 0.555 ms 2.142 ms 2.742 ms 3 ճ໨ 0.044 ms 0.519 ms 2.321 ms 2.884 ms 4 ճ໨ 0.047 ms 0.906 ms 2.623 ms 3.576 ms 5 ճ໨ 0.062 ms 0.502 ms 1.964 ms 2.528 ms ฏۉ 0.049 ms 0.591 ms 2.222 ms 2.862 ms : 5 ౳෼Λݸʑʹ 5 ֊૚ωετ
 (ԣ෯Λ dp ࢦఆ) ܭଌ݁Ռ 295 views 44

Slide 45

Slide 45 text

5 ౳෼Λݸʑʹ 5 ֊૚ωετ ·ͱΊʢAndroid 6.0ʣ ޡࠩͷൣғʢʁʣ
 1 ճͷଌఆ஋Ͱൺֱ͢Δͱ݁Ռ͕มΘͬͯ͠·͏ ΤϛϡϨʔλͱ࣮୺຤ (Nexus 7) ͰεΫϩʔϧͤͯ͞Έͨ
 ͱ͜Ζɺҧ͍͕͋Δ͔͸ඍົͰ֬৴͕࣋ͯͳ͍ 0↕ layout_weight PercentRelative
 Layout ԣ෯Λ dp ࢦఆ ߹ܭ࣌ؒͷฏۉ 4.199 ms 3.218 ms 2.862 ms 45

Slide 46

Slide 46 text

5 ౳෼Λݸʑʹ 5 ֊૚ωετ
 ·ͱΊʢAndroid 6.0ʣ layout_weight=“1” ͸ઃఆͰ͖Δͱ͜Ζશͯʹઃ ఆ͠·ͨ͠ʢ25 ݸʣ Ռͨͯ͠ൺֱ͢Δ৚݅ͱͯ͠ਖ਼͍͠ͷ͔ʢʁʣ ϑΣΞʹͳ͍ͬͯΔͷ͔ʢʁʣͱ͍͏ٙ໰͕

Slide 47

Slide 47 text

5 5 ౳෼Λݸʑʹ 20 ֊૚ωετ (layout_weight) ιʔείʔυˍը໘ 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 47

Slide 48

Slide 48 text

Measure Layout Draw ߹ܭ 1 ճ໨ 0.050 ms 6.173 ms 3.936 ms 10.159 ms 2 ճ໨ 0.092 ms 18.686 ms 9.027 ms 27 .805 ms 3 ճ໨ 0.041 ms 8.969 ms 14.049 ms 23.059 ms 4 ճ໨ 0.042 ms 6.624 ms 4.788 ms 11.454 ms 5 ճ໨ 0.041 ms 6.789 ms 33.794 ms 40.624 ms ฏۉ 0.053 ms 9.448 ms 13.119 ms 22.620 ms 5 5 ౳෼Λݸʑʹ 20 ֊૚ωετ
 (layout_weight) ܭଌ݁Ռ 1120 views 48

Slide 49

Slide 49 text

Measure Layout Draw ߹ܭ 1 ճ໨ 0.048 ms 1.639 ms 2.964 ms 4.651 ms 2 ճ໨ 0.043 ms 1.937 ms 3.245 ms 5.225 ms 3 ճ໨ 0.048 ms 2.375 ms 4.489 ms 6.912 ms 4 ճ໨ 0.040 ms 1.784 ms 3.584 ms 5.408 ms 5 ճ໨ 0.044 ms 1.913 ms 4.098 ms 6.055 ms ฏۉ 0.045 ms 1.930 ms 3.676 ms 5.650 ms 6 5 ౳෼Λݸʑʹ 20 ֊૚ωετ
 (PercentRelativeLayout) ܭଌ݁Ռ 1120 views 49

Slide 50

Slide 50 text

Measure Layout Draw ߹ܭ 1 ճ໨ 0.049 ms 0.944 ms 3.424 ms 4.417 ms 2 ճ໨ 0.047 ms 0.923 ms 6.751 ms 7 .721 ms 3 ճ໨ 0.042 ms 1.253 ms 3.303 ms 4.598 ms 4 ճ໨ 0.044 ms 0.847 ms 3.401 ms 4.292 ms 5 ճ໨ 0.040 ms 0.890 ms 6.240 ms 7 .170 ms ฏۉ 0.044 ms 0.971 ms 4.624 ms 5.640 ms : 5 ౳෼Λݸʑʹ 20 ֊૚ωετ
 (ԣ෯Λ dp ࢦఆ) ܭଌ݁Ռ 1120 views 50

Slide 51

Slide 51 text

5 ౳෼Λݸʑʹ 20 ֊૚ωετ
 ·ͱΊʢAndroid 6.0ʣ layout_weight ஍ࠈʹ͢Δͱඳը͕࣌ؒ஗͘ͳΔ͜ͱ͸
 ֬ೝͰ͖ͨ ΤϛϡϨʔλͱ࣮୺຤ (Nexus 7) Ͱ ListView ΛεΫϩʔϧͤͯ͞ Έͨͱ͜Ζ layout_weight ͱ PercentRelativeLayout ͱ ԣ෯ dp ࢦఆͰಈ͖ʹҧ͍͕͋Δ͔ͱݴΘΕΔͱͦ͏Ͱ΋ͳ͍ʢʁʣ layout_weight PercentRelative
 Layout ԣ෯Λ dp ࢦఆ ߹ܭ࣌ؒͷฏۉ 22.620 ms 5.650 ms 5.640 ms 51

Slide 52

Slide 52 text

5 ౳෼Λݸʑʹ 20 ֊૚ωετ
 ·ͱΊʢAndroid 6.0ʣ layout_weight=“1” ͸ઃఆͰ͖Δͱ͜Ζશͯʹઃ ఆͯ͠Έ·ͨ͠ʢ100 ݸʣ Ռͨͯ͠ൺֱ͢Δ৚݅ͱͯ͠ਖ਼͍͠ͷ͔ʢʁʣ ϑΣΞʹͳ͍ͬͯΔͷ͔ʢʁʣͱ͍͏ٙ໰͕

Slide 53

Slide 53 text

layout_weight ·ͱΊ ͦ΋ͦ΋ൺֱ৚͕݅ἧ͍ͬͯΔͷ͔ෆ҆ʹͳΔ ࠷৽ͷ୺຤Ͱ͸ଟগͷ layout_weight ࢖༻Ͱ͸ ͦ͜·ͰΞϓϦ͸ॏ͘ͳΒͳ͍Α͏ͩ

Slide 54

Slide 54 text

fin. 54