프래그먼트 연습중에 검색해보니 여러가지 방식이 있는것 같습니다. <div><br></div> <div>보통 어떤걸 쓰시는지 알고 싶습니다.</div> <div><br></div> <div>1. Interface 사용하여서 구현</div> <div><br></div> <div>1) MainActivity</div> <div style="overflow:auto;width:auto;border-style:solid;border-color:#808080;border-width:.1em .1em .1em .8em;padding:.2em .6em;background:#ffffff;"><pre style="margin:0px;line-height:125%;"><span style="color:#008800;font-weight:bold;">public</span> <span style="color:#008800;font-weight:bold;">class</span> <span style="color:#bb0066;font-weight:bold;">MainActivity</span> <br><span style="color:#008800;font-weight:bold;">extends</span> ActionBarActivity <span style="color:#008800;font-weight:bold;">implements</span> FragmentInterActionListener<br><span style="color:#333333;">{</span> <span style="color:#888888;">//..... 생략 .....</span><br> <span style="color:#555555;font-weight:bold;">@Override</span> <br><span style="color:#008800;font-weight:bold;">public</span> <span style="color:#333399;font-weight:bold;">void</span> <span style="color:#0066bb;font-weight:bold;">nextFragment</span><span style="color:#333333;">(){</span><span style="color:#888888;">//코드 생략 (FragmentInterActionListener) 내에 등록한 메소드</span><span style="color:#333333;">}</span><br><span style="color:#333333;">}</span></pre></div> <div><br></div> <div><br></div> <div><br></div> <div>2)FrisetFragment</div> <div style="overflow:auto;width:auto;border-style:solid;border-color:#808080;border-width:.1em .1em .1em .8em;padding:.2em .6em;background:#ffffff;"><pre style="margin:0px;line-height:125%;"><span style="color:#008800;font-weight:bold;">private</span> FragmentInterActionListener listener<span style="color:#333333;">;</span> </pre><pre style="margin:0px;line-height:125%;"><br></pre><pre style="margin:0px;line-height:125%;"><span style="color:#555555;font-weight:bold;">@Override</span> </pre><pre style="margin:0px;line-height:125%;"><span style="color:#008800;font-weight:bold;">public</span> <span style="color:#333399;font-weight:bold;">void</span> <span style="color:#0066bb;font-weight:bold;">onAttach</span><span style="color:#333333;">(</span><span style="color:#008800;font-weight:bold;">final</span> Activity activity<span style="color:#333333;">)</span> <span style="color:#333333;">{</span> </pre><pre style="margin:0px;line-height:125%;"> <span style="color:#008800;font-weight:bold;">super</span><span style="color:#333333;">.</span><span style="color:#0000cc;">onAttach</span><span style="color:#333333;">(</span>activity<span style="color:#333333;">);</span> </pre><pre style="margin:0px;line-height:125%;"> listener <span style="color:#333333;">=</span> <span style="color:#333333;">(</span>FragmentInterActionListener<span style="color:#333333;">)</span> activity<span style="color:#333333;">;</span> <span style="line-height:125%;font-family:'굴림';font-size:9pt;"> </span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#333333;">}</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;"> </span></pre><pre style="margin:0px;line-height:125%;"> </pre><pre style="margin:0px;line-height:125%;"><span style="color:#555555;font-weight:bold;">@Override</span> </pre><pre style="margin:0px;line-height:125%;"><span style="color:#008800;font-weight:bold;">public</span> View <span style="color:#0066bb;font-weight:bold;">onCreateView</span><span style="color:#333333;">(</span>LayoutInflater inflater<span style="color:#333333;">,</span> ViewGroup container<span style="color:#333333;">,</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;">Bundle savedInstanceState</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#333333;">)</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;"> </span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#333333;">{</span></pre><pre style="margin:0px;line-height:125%;"><span style="line-height:125%;font-family:'굴림';font-size:9pt;"> View view </span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#333333;">=</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;"> inflater</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#333333;">.</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#0000cc;">inflate</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#333333;">(</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;">R</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#333333;">.</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#0000cc;">layout</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#333333;">.</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#0000cc;">fragment_first</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#333333;">,</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;"> container</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#333333;">,</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;"> </span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#008800;font-weight:bold;">false</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;color:#333333;">);</span><span style="line-height:125%;font-family:'굴림';font-size:9pt;"> </span></pre><pre style="margin:0px;line-height:125%;"><span class="Apple-tab-span" style="white-space:pre;"> </span>btn <span style="color:#333333;">=</span> <span style="color:#333333;">(</span>Button<span style="color:#333333;">)</span> view<span style="color:#333333;">.</span><span style="color:#0000cc;">findViewById</span><span style="color:#333333;">(</span>R<span style="color:#333333;">.</span><span style="color:#0000cc;">id</span><span style="color:#333333;">.</span><span style="color:#0000cc;">btn1</span><span style="color:#333333;">);</span> </pre><pre style="margin:0px;line-height:125%;"> <span class="Apple-tab-span" style="white-space:pre;"> </span>btn<span style="color:#333333;">.</span><span style="color:#0000cc;">setOnClickListener</span><span style="color:#333333;">(</span><span style="color:#008800;font-weight:bold;">new</span> View<span style="color:#333333;">.</span><span style="color:#0000cc;">OnClickListener</span><span style="color:#333333;">()</span> <span style="color:#333333;">{</span> </pre><pre style="margin:0px;line-height:125%;"><br></pre><pre style="margin:0px;line-height:125%;"><span class="Apple-tab-span" style="white-space:pre;"> </span> <span style="color:#555555;font-weight:bold;">@Override</span> </pre><pre style="margin:0px;line-height:125%;"> <span style="color:#008800;font-weight:bold;">public</span> <span style="color:#333399;font-weight:bold;">void</span> <span style="color:#0066bb;font-weight:bold;">onClick</span><span style="color:#333333;">(</span>View view<span style="color:#333333;">)</span> <span style="color:#333333;">{</span> </pre><pre style="margin:0px;line-height:125%;"><span class="Apple-tab-span" style="white-space:pre;"> </span> listener<span style="color:#333333;">.</span><span style="color:#0000cc;">nextFragment</span><span style="color:#333333;">();</span> <span style="color:#333333;">}</span> <span style="color:#333333;">});</span></pre><pre style="margin:0px;line-height:125%;"><span style="color:#333333;"><span class="Apple-tab-span" style="white-space:pre;"> </span>}</span></pre><pre style="margin:0px;line-height:125%;"><span style="color:#333333;">}</span></pre></div> <div><br></div> <div><br></div> <div>2. getActivity 사용</div> <div><br></div> <div>onClick 부분에서</div> <div><br></div> <div>((MainActivity)getActivity).메소드명() 이런식으로 호출하게 하는 방법이 있던데</div> <div><br></div> <div>주로 어떤것을 쓰는지 궁금합니다.</div> <div><br></div> <div><br></div> <div><br></div> <div>안드로이드 스튜디오에서 프래그먼트 생성시 1번처럼 구현되게 유도하는것으로 봐서 정석은 1번같은데</div> <div><br></div> <div>2번 방법으로 하면 훨씬 쉽게 되서... 혹시 사용하는데 문제가 되는게 있을까요??</div> <div><br></div> <div>아니면 문제가 안되더라도 정석인 1번처럼 해야할까요</div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.