Slide 1

Slide 1 text

4QPPOΛ࢖Θͣʹ ςετέʔεͰεΫγϣΛࡱΓ͍ͨ 4IJOKVLVBBS !LPOZBWJD

Slide 2

Slide 2 text

!LPOZBWJD ཥঝӹʢΓͪ͐Μ͍ʣɾ୆࿷ग़਎ɾ೔ຊ೥໨ ࡶ৯ܥΤϯδχΞ d૊ࠐΈ04ݚڀ⾣dήʔϜ։ൃ⾣d4%,։ൃ

Slide 3

Slide 3 text

‣ ΞϓϦ಺ϝοηʔδ ‣ Ϣʔβʔૢ࡞ͰτϦΨʔ ‣ μΠΞϩάɾ
 ΦʔόʔϨΠɾόφʔ ‣ ηάϝϯτ ‣ "#ςετ ‣ ίϯόʔδϣϯܭଌ ‣ ɾɾɾ

Slide 4

Slide 4 text

ςετέʔεͰΞϓϦ಺ϝοηʔδͷදࣔΛ֬ೝ͍ͨ͠ ‣ όϦΤʔγϣϯ͕ଟ͗͢Δ ‣ ΞϓϦ಺ϝοηʔδͷछྨ ‣ ղ૾౓ ‣ ը૾ͷΞεϖΫτൺ ‣ จࣈ਺ ‣ ɾɾɾ ‣ 6*ςετͰΞαʔγϣϯॻ͘ͷ͸ඇݱ࣮త ‣ ςετέʔεͰࣗಈͰεΫγϣࡱΓ͍ͨ

Slide 5

Slide 5 text

4QPPO

Slide 6

Slide 6 text

‣ ࣗಈͰεΫγϣΛࡱΔ ‣ ෳ਺୺຤ฒྻ࣮ߦ ‣ ௒ศར Spoon

Slide 7

Slide 7 text

ͱ͜ΖͰʜ

Slide 8

Slide 8 text

৺഑͋Γ ‣ ΞϓϦ಺ϝοηʔδ͸දࣔͷ࢓ํͪΐͬͱҧ͏͚Ͳ͏·͘ࡱΕΔ͔ʁ ‣ 4%,ͷ6*ςετ͸"OESPJE5FTU0SDIFTUSBUPS͕΄΅ඞਢ ‣ ͜Ε͸4QPPOͷSVOOFSͱ͏·͘ڞଘͰ͖ΔͩΖ͏͔ʁ ‣ 6*ςετͰ࢖͏ΞϓϦ͸͋·Γґଘ૿΍ͨ͘͠ͳ͍ ‣ ͦ΋ͦ΋εΫγϣࡱΔ͘Β͍ͳΒ؆୯ʹͰ͖ΔͷͰ͸ͳ͍͔ʁ

Slide 9

Slide 9 text

‣ 9$6*4DSFFOͰ
 ௒؆୯ʹͰ͖Δ XCUITestͷ৔߹

Slide 10

Slide 10 text

4QPPOͷ࣮૷ΛݟͯΈΔ

Slide 11

Slide 11 text

‣ #JUNBQͰ$BOWBTॳظԽ ‣ BDUJWJUZ
 HFU8JOEPX 
 HFU%FDPS7JFX 
 ESBX DBOWBT ‣ ͜Ε͚ͩʂ

Slide 12

Slide 12 text

͜ͷ··΍ͬͯΈΔ

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

΍ͬͺΓϝοηʔδ͕ඳը͞Εͳ͍

Slide 16

Slide 16 text

-BZPVU*OTQFDUPS

Slide 17

Slide 17 text

4FMFDU8JOEPXͰ .BJO"DUJWJUZ͕ݸฒΜͰΔ

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

ΞϓϦ಺ϝοηʔδʢμΠΞϩάʣ ‣ %JBMPH'SBHNFOUͰ࣮૷͞Ε͍ͯΔ ‣ "DUJWJUZͱ͸ผͷ7JFXπϦʔʹͳΔ ‣ ΍ͬͺΓͩΊʁ

Slide 20

Slide 20 text

‣ #JUNBQͰ$BOWBTॳظԽ ‣ BDUJWJUZ
 HFU8JOEPX 
 HFU%FDPS7JFX 
 ESBX DBOWBT ‣ ͜Ε͚ͩʂ

Slide 21

Slide 21 text

7JFX͑͋͞Ε͹ESBX͢Δ͚ͩ

Slide 22

Slide 22 text

7JFX͑͋͞Ε͹Ͱ͖Δ ‣ 'SBHNFOU5BHΛ஌͍ͬͯΔ Fragment fragment = activityRule.getActivity() .getFragmentManager() .findFragmentByTag(fragmentTag); if (fragment != null) { View view = ((DialogFragment) fragment).getDialog() .getWindow() .getDecorView() .getRootView(); view.draw(canvas); }

Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

ͣΕΔͷͰௐ੔ Fragment fragment = activityRule.getActivity() .getFragmentManager() .findFragmentByTag(fragmentTag); if (fragment != null) { View view = ((DialogFragment) fragment).getDialog() .getWindow() .getDecorView() .getRootView(); int[] loc = new int[2]; view.getLocationOnScreen(loc); canvas.translate(loc[0], loc[1]); view.draw(canvas);

Slide 25

Slide 25 text

No content

Slide 26

Slide 26 text

΍ͬͨʂ

Slide 27

Slide 27 text

ͱ͜ΖͰʜ

Slide 28

Slide 28 text

όφʔλΠϓ͸%JBMPH'SBHNFOUͰ͸ͳ͍ ‣ 1PQVQ8JOEPXΛ࢖͍ͬͯΔ ‣ TFU$POUFOU7JFX ‣ 5BHͰऔΓग़ͤͳ͍ ‣ ΍ͬͺΓͩΊʁ

Slide 29

Slide 29 text

7JFXͷࢀরΛ ΞϓϦ͔Βςετέʔεʹ౉ͤ͹͍͍

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

·ͱΊ ‣ ςετέʔεͰεΫγϣΛࡱΔʹ͸ɺ7JFXͷࢀর͕͋Ε͹Α͍ ‣ %JBMPH'SBHNFOUͷεΫγϣΛࡱΔʹ͸ɺ5BHͰ'SBHNFOUͷࢀরΛऔ Γग़ͦ͏ ‣ 1PQVQ8JOEPXͰग़ͨ͠7JFXͷεΫγϣΛࡱΔʹ͸ɺ༧Ί7JFXͷࢀ রΛ͍࣋ͬͯͳ͍ͱ͍͚ͳ͍ʢςετέʔε͕ϗϫΠτϘοΫεతʹ ͳΔʣ